QPushButton提供了一個常用的按鈕。要使用的話,必須加入下列指令:
#include
繼承自;且被 繼承。
按鈕可能是在GUI中最常使用到的widget,按下按鈕控制電腦來執行某些動作或回答某些問題,典型的按鈕包括OK、Apply、
Cancel、Close、Yes、No以及Help。按鈕通常是矩形且會顯示一個文字標籤來描述這個按鈕會做的動作,此外,在文字標籤前加
上"&"符號則指定了一個快捷鍵(shortcut)。範例如下:
QPushButton *button =
new QPushButton
("&Download");
上例中,則快捷鍵為 Alt+D。
程式範例
#include
#include
#include
#include
#include
int main
(int argc,
char *argv
[])
{
QApplication app
(argc, argv
);
QWidget *window =
new QWidget
();
window->setWindowTitle
("QPushButton");
window->resize
(320,
240);
QPushButton *btn1 =
new QPushButton
("Normal Button");
QPushButton *btn2 =
new QPushButton
("Toggle Button");
btn2->setCheckable
(TRUE);
btn2->setChecked
(TRUE);
QPushButton *btn3 =
new QPushButton
("Flat Button");
btn3->setFlat
(TRUE);
QPushButton *btn4 =
new QPushButton
("Popup Button");
QMenu *menu =
new QMenu;
menu->addAction
("Item 1");
menu->addAction
("Item 2");
btn4->setMenu
(menu
);
QVBoxLayout *layout =
new QVBoxLayout;
layout->addWidget
(btn1
);
layout->addWidget
(btn2
);
layout->addWidget
(btn3
);
layout->addWidget
(btn4
);
layout->addStretch
(1);
window->setLayout
(layout
);
window->show
();
return app.
exec();
}
說明
QPushButton *btn1 =
new QPushButton
("Normal Button");
首先第一個是最基本按鈕,其上的文字顯示為Normal Button。
QPushButton *btn2 =
new QPushButton
("Toggle Button");
btn2->setCheckable
(TRUE);
btn2->setChecked
(TRUE);
這是第二個建立的按鈕,名為Toggle Button。此種按鈕的特色是按下去之後不會像一斑原始的按鈕那樣恢復原狀。要如何達到這樣的效果呢?就是利用下面兩個function,利用 指定按鈕bun2是按下就不會恢復原狀,預設是FALSE;而 則是設定按鈕一開始是check(按下)。
QPushButton *btn3 =
new QPushButton
("Flat Button");
btn3->setFlat
(TRUE);
而範例第三個按鈕則為邊緣沒有浮起的平坦按鈕,利用 即可達成,預設是FALSE。
QPushButton *btn4 =
new QPushButton
("Popup Button");
QMenu *menu =
new QMenu;
menu->addAction
("Item 1");
menu->addAction
("Item 2");
btn4->setMenu
(menu
);
第四個按鈕則為有下拉式選單的按鈕。首先利用利用 增加 物件中的選單,再利用 將QMenu物件加入到按鈕中。
QVBoxLayout *layout =
new QVBoxLayout;
layout->addWidget
(btn1
);
layout->addWidget
(btn2
);
layout->addWidget
(btn3
);
layout->addWidget
(btn4
);
layout->addStretch
(1);
最後利用 設定版面配置為垂直排列,依序把建立好的四個按鈕加入。而 則指定了版面配置的可伸展空間,即為空白的空間。預設為0,若不指定則這四個按鈕會佔滿整個視窗,但因為範例有下拉式選單按鈕,因此使用這個功能。
執行
執行這個範例,如下所示。
阅读(1696) | 评论(0) | 转发(0) |