我嘗試創建一個GUI應用程序。編程的Qt GUI設計
主窗口,QMainWindow
,包含9個固定大小的標籤,也包含主窗口的大小。
我試圖讓它沒有Qt GUI Designer的編程。該項目的構建沒有錯誤,但我看不到主窗口上顯示的任何標籤和佈局。它只是空白。
這裏是我的源代碼:
WCwindow::WCwindow()
{
// initialize widgets with text
CAM111 = new QLabel("CAM 01");
CAM121 = new QLabel("CAM 02");
CAM131 = new QLabel("CAM 03");
CAM211 = new QLabel("CAM 04");
CAM221 = new QLabel("CAM 05");
CAM231 = new QLabel("CAM 06");
CAM311 = new QLabel("CAM 07");
CAM321 = new QLabel("CAM 08");
CAM331 = new QLabel("CAM 09");
CAM111->setFixedSize(wcW,wcH);
CAM121->setFixedSize(wcW,wcH);
CAM131->setFixedSize(wcW,wcH);
CAM211->setFixedSize(wcW,wcH);
CAM221->setFixedSize(wcW,wcH);
CAM231->setFixedSize(wcW,wcH);
CAM311->setFixedSize(wcW,wcH);
CAM321->setFixedSize(wcW,wcH);
CAM331->setFixedSize(wcW,wcH);
QGridLayout *layout = new QGridLayout;
layout->addWidget(CAM111,0,0);
layout->addWidget(CAM121,0,1);
layout->addWidget(CAM131,0,2);
layout->addWidget(CAM211,1,0);
layout->addWidget(CAM221,1,1);
layout->addWidget(CAM231,1,2);
layout->addWidget(CAM311,2,0);
layout->addWidget(CAM321,2,1);
layout->addWidget(CAM331,2,2);
setLayout(layout);
setWindowTitle("Camera Window");
setFixedSize(1000, 800);
}
當然
,類初始化並在main.cpp中誘發:
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
WCwindow *WCwin = new WCwindow;
WCwin->show();
return app.exec();
}
我會遇到什麼樣的bug?
固定的尺寸是一個糟糕的主意,因爲系統/用戶相關字體大小,翻譯等。無論如何,wcW和wcH的值是什麼? – 2012-08-06 09:23:45
順便說一句,如果您跳過標籤上的setFixedSize,它應該至少可以工作。 – 2012-08-06 09:31:57
這是因爲從網絡攝像頭捕獲的圖像的大小具有固定的大小。這些標籤是拍攝圖像的持有者 – 2012-08-06 15:39:01