建立一個空項目:
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;
}
效果展示
結果兩個視窗獨立,按鈕視窗可以獨自移動和縮放大小。
如何将按鈕視窗嵌入到主視窗中?
如果不知道父對象,對象與對象(視窗與視窗)之間沒有關系,互相獨立。
例如将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;
}
效果展示
視窗控件對象
三者意義相同,隻是叫法不一樣
如果進行了分類,就分為主視窗和子視窗;父對象和子對象;父控件和子控件