2
我基本上想要在對話框窗口小部件上顯示一個矩形。使用另一個問題作爲參考,我嘗試調整使用QLabel和繪畫的框架(整個過程看起來過於複雜)。爲什麼我不想在我的Qt窗口小部件上畫出「矩形」?
我開始在對話框中的類製作員:
QLabel* label;
在對話框的構造函數:
label = new QLabel(this);
label->setGeometry(20, 50, 50, 100);
只是爲了試圖使它的工作,我給了對話框中的一個按鈕,使用標籤創建的「矩形」出現在小部件上。我連接這個按鈕的「按下」信號到一個槽,其執行以下操作:
QPixmap pixmap(50, 100);
pixmap.fill(QColor("transparent"));
QPainter painter(&pixmap);
painter.setBrush(QBrush(Qt::black));
painter.drawRect(20, 50, 50, 100);
label->setPixmap(pixmap);
update();
不幸的是,當我按下按鈕沒有出現在窗口小部件。我在這裏錯過了什麼?