QT學習筆記_建立串連,qt學習筆記建立
所謂建立串連,即使用者對某個按鈕點擊之後程式要做出的響應。這次寫了一個退出按鈕。
//建立串連 即響應事件#include <QApplication>#include <QPushButton>int main(int argc,char *argv[]){QApplication app(argc,argv);QPushButton *button=new QPushButton("Quit");QObject::connect(button,SIGNAL(clicked()),&app,SLOT(quit()));button->show();return app.exec();}
:
C++ GUI Qt的建立串連,訊號與槽
void QSpinBox::valueChanged ( int i ) [signal]
This signal is emitted whenever the spin box's value is changed. The new value's integer value is passed in i.
當spin box的值發生改變時,這個訊號將被發送。spin box的最新值將通過參數i傳遞。
value : int
This property holds the slider's current value.
The slider forces the value to be within the legal range: minimum <= value <= maximum.
Changing the value also changes the sliderPosition.
這個屬性為slider的當前值,slider將強制該值在最小值和最大值之間的合法範圍內。slider的滑動塊位置將與這個值的改變而同步改變。
Access functions:
int value () const
void setValue ( int )
Notifier signal:
通知訊號:
void valueChanged ( int value )
設定範圍可以使用 setRange ( int min, int max )
設定步調可以使用 setSingleStep ( int )
PS: The Best Way to learn QT is assistant。
我的Qt學習筆記 4 怎在 QWidget 視窗上彈出右鍵菜單
Solution 1 :給一個 QWidget 添加 QActions,設定QWidget 的 contextMenuPolicy 屬性為 Qt::ActionsContextMenu 值,使得視窗菜單以這些添加的 QActions 為功能表項目組成一個右鍵菜單。1:MyWidget::MyWidget(QWidget *parent)2:: QWidget(parent)3:{4:setWindowTitle(tr(Context Menu Show 1));5://為視窗添加QActions6:addAction(newQAction(tr(&Open),this));7:addAction(newQAction(QIcon(:/images/mark.png), tr(&Mark),this));8:addAction(newQAction(tr(&Quit),this));9://設定contextMenuPolicy屬性值為 '以Actions為快顯功能表的功能表項目組成菜單'10:setContextMenuPolicy(Qt::ActionsContextMenu);11:}效果:Solution 2 :重寫 QWidget 的被保護的虛函數void QWidget::contextMenuEvent (QContextMenuEvent*event)[virtual protected],設定QWidget 的 contextMenuPolicy 屬性為 Qt::DefaultContextMenu 值,其實預設就是這個值,不用顯示設定。1:MyWidget::MyWidget(QWidget *parent)2:: QWidget(parent)3:{4:setWindowTitle(tr(Context Menu Show 2));5:setContextMenuPolicy(Qt::DefaultContextMenu);//其實不用設定,預設就是這個值6:}7:8:9:voidMyWidget::contextMenuEvent(QContextMenuEvent *event)10:{11:QMenu *menu =newQMenu(this);12:menu-addAction(newQAction(tr(&Open), menu));13:menu-addAction(newQAction(QIcon(:/images/mark.png), tr(&Mark), menu));14:menu-addAction(newQAction(tr(&Quit), menu));15:menu-move(cursor().pos());//讓菜單顯示的位置在滑鼠的座標上16:menu-show();17:}效果:上面直接是在 contextMenuEvent 函數體裡面 new 了個菜單和一些功能表項目,這是為了示範。