自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

QT信號與槽之槽函數(shù)

移動開發(fā)
本文介紹的是關于QT信號與槽之槽函數(shù),用簡單的代碼實現(xiàn)QQ登錄窗口。對于Qt 信號與槽的概念就不對解釋了,網(wǎng)上也有許多的資料。

Qt的一項重要的機制就是它的信號,在圖形用戶界面編程中,經(jīng)常需要將一個窗口部件的變化通知給另一個窗口部件,或者說系統(tǒng)對象進行通信.一般的圖形用戶編程中采用回調函數(shù)進行對象間通信(如gtk+),這樣回調函數(shù)和處理函數(shù)捆綁在一起,但這樣做沒有信號和槽機制簡便和靈活。

QT信號是什么,大家可以方便的搜索到。或許用QT Designer 設計會方便一些,其實手動寫出來或許會更好。下面就是自己自己手動設計的一個槽函數(shù)的例子。此處寫的是類似QQ的登陸框。

1.首先在頭文件中定義槽函數(shù)。   

  1. #ifndef LOGINDIALOG_H    
  2. #define LOGINDIALOG_H    
  3. #include <QDialog>     
  4. namespace Ui {     
  5.     class LoginDialog;     
  6. }     
  7. class LoginDialog : public QDialog     
  8. {     
  9.     Q_OBJECT     
  10. public:     
  11.     explicit LoginDialog(QWidget *parent = 0);     
  12.     ~LoginDialog();     
  13. private:     
  14.     Ui::LoginDialog *ui;     
  15. private slots:     
  16.     void on_RegisterButton_clicked();     
  17.     void SignUp(); // 自定義的槽     
  18. };    
  19. #endif // LOGINDIALOG_H    
  20. #ifndef LOGINDIALOG_H  
  21. #define LOGINDIALOG_H  
  22. #include <QDialog> 
  23. namespace Ui {  
  24.     class LoginDialog;  
  25. }  
  26. class LoginDialog : public QDialog  
  27. {  
  28.     Q_OBJECT  
  29. public:  
  30.     explicit LoginDialog(QWidget *parent = 0);  
  31.     ~LoginDialog();  
  32. private:  
  33.     Ui::LoginDialog *ui;  
  34. private slots:  
  35.     void on_RegisterButton_clicked();  
  36.     void SignUp(); // 自定義的槽  
  37. };  
  38. #endif  

2. 在CPP中連接信號click與SignUp并實現(xiàn)槽函數(shù)體。

  1. //構造函數(shù)     
  2. LoginDialog::LoginDialog(QWidget *parent) :     
  3.     QDialog(parent),     
  4.     ui(new Ui::LoginDialog)     
  5. {     
  6.     ui->setupUi(this);     
  7.     ui->loginpassword->setEchoMode(QLineEdit::Password); //給密碼加密     
  8.     ui->loginuserid->setFocus(); //設置焦點     
  9.     connect(ui->LoginButton,SIGNAL(clicked()),this,SLOT(SignUp()));//connect     
  10. }     
  11. void LoginDialog::SignUp()     
  12. {     
  13. ...     
  14. }    
  15. //構造函數(shù)  
  16. LoginDialog::LoginDialog(QWidget *parent) :  
  17.     QDialog(parent),  
  18.     ui(new Ui::LoginDialog)  
  19. {  
  20.     ui->setupUi(this);  
  21.     ui->loginpassword->setEchoMode(QLineEdit::Password); //給密碼加密  
  22.     ui->loginuserid->setFocus(); //設置焦點  
  23.     connect(ui->LoginButton,SIGNAL(clicked()),this,SLOT(SignUp()));//connect  
  24. }  
  25. void LoginDialog::SignUp()  
  26. {  
  27. ...  

自己定義的槽函數(shù)就這么實現(xiàn)啦!

小結:QT信號槽函數(shù)的內容就介紹完了,文字不多,基本是代碼實現(xiàn),希望你能夠實現(xiàn)出效果,能夠幫你學習槽函數(shù)

【編輯推薦】

QT的信號與槽機制

淺談Qt中多線程編程

在Qt中如何寫控制臺程序

從新手到老手之Qt學習歷程

QT中關于信號與槽機制的實現(xiàn)原理

責任編輯:zhaolei 來源: 互聯(lián)網(wǎng)
相關推薦

2011-06-09 09:45:35

Linux QT 信號

2011-06-23 14:40:13

Qt 信號

2011-06-23 13:38:27

QT 元對象 信號

2011-06-13 10:21:25

QT 信號 槽機制

2011-06-20 15:40:19

QT 信號

2011-06-28 15:47:13

Qt 信號

2021-12-23 15:07:40

QtC++編譯程序

2011-07-01 14:34:02

Thread Affinity 信號

2011-06-27 16:18:24

Qt Designer

2011-06-22 17:09:50

QT 進程 通信

2023-10-07 08:21:35

PyQtPython

2021-09-28 14:25:48

iPhone 13蘋果手機

2018-11-04 08:17:41

2013-10-29 09:08:05

2013-10-29 09:32:05

2013-09-12 10:11:57

蘋果iPhone 5ciPhone 5s

2012-03-10 20:55:40

Nokia

2015-08-04 14:44:39

Windows 10升級

2012-08-24 10:49:51

備份恢復

2021-06-29 21:36:21

微服務Nacos日志
點贊
收藏

51CTO技術棧公眾號