天天看點

QT學習-第一個程式

建立一個空項目:

main.cpp檔案代碼:

int main(int argc,char**argv){
   QApplication app (argc,argv);

   QWidget w;//建立名為w的視窗
   w.show();//視窗顯示
   w.setWindowTitle("檢測系統");//标題設定
   QPushButton b;//同理建立一個名為b的按鈕
   b.setText("打開相機");//給按鈕設定内容
   b.show();//按鈕顯示
   app.exec();
   return 0;
}
           

效果展示

結果兩個視窗獨立,按鈕視窗可以獨自移動和縮放大小。

QT學習-第一個程式

如何将按鈕視窗嵌入到主視窗中?

如果不知道父對象,對象與對象(視窗與視窗)之間沒有關系,互相獨立。

例如将a指定b為父對象,那麼a放在了b的上面。

指定父對象,有兩種辦法:

1.setparent

2.通過構造函數傳參

設定完成後,指定好父對象,隻需要顯示父對象,子對象會自動顯示在上面。

main.cpp檔案代碼修改後:

#include <QApplication>
#include <QWidget> //視窗顯示基類
#include <QPushButton> //按鈕的頭檔案

int main(int argc,char**argv){
   QApplication app (argc,argv);

   QWidget w;//建立名為w的視窗
   w.setWindowTitle("檢測系統");//标題設定

   QPushButton b;//同理建立一個名為b的按鈕
   b.setText("打開相機");//給按鈕設定内容
   b.setParent(&w);//指定父對象
   b.move(100,200);//預設位置為原點。move為移動坐标API,左上角為原點,第一個參數為在橫坐标上移動100,第二個為在縱坐标上移動200

   QPushButton b1(&w);//構造函數傳參指定父對象
   b1.setText("關閉相機");
   w.show();//視窗顯示

   app.exec();
   return 0;
}
           

效果展示

QT學習-第一個程式

視窗控件對象

三者意義相同,隻是叫法不一樣

如果進行了分類,就分為主視窗和子視窗;父對象和子對象;父控件和子控件

繼續閱讀