我正在用GUI構建一個簡單的C++應用程序。我正在使用最新的Qt(5.2)。所以我的問題 - 我想在我的窗口上創建類似掃雷的字段,我想問如何在程序的代碼中創建按鈕,以便我可以創建不同大小的字段。必須有一種方法,但我必須將25,64和144個按鈕放在三個單獨的窗口中,這是不正確的。在代碼中生成Qt按鈕
編輯:我知道它會有一些循環,但我錯過了有關「創建按鈕」的代碼以及關於將其放置在窗口上並將其定位的代碼。
預先感謝您
我正在用GUI構建一個簡單的C++應用程序。我正在使用最新的Qt(5.2)。所以我的問題 - 我想在我的窗口上創建類似掃雷的字段,我想問如何在程序的代碼中創建按鈕,以便我可以創建不同大小的字段。必須有一種方法,但我必須將25,64和144個按鈕放在三個單獨的窗口中,這是不正確的。在代碼中生成Qt按鈕
編輯:我知道它會有一些循環,但我錯過了有關「創建按鈕」的代碼以及關於將其放置在窗口上並將其定位的代碼。
預先感謝您
你有兩種不同的方式來解決這個問題:
1)Qt控件
使用QPushButton與所需的迭代次數的循環中創造。
QVector<QPushButton> pushButtons1(25);
foreach (QPushButton &pushButton, pushButtons1)
pushButton.setText("pushButtons1");
QVector<QPushButton> pushButtons2(64);
foreach (QPushButton &pushButton, pushButtons2)
pushButton.setText("pushButtons2");
QVector<QPushButton> pushButtons2(144);
foreach (QPushButton &pushButton, pushButtons3)
pushButton.setText("pushButtons3");
如果不知道更多關於您的背景和使用情況,很難給出更具體的細節。
2)QtQuickControls
與中繼器和/或網格取決於你對佈局確切的慾望使用Button組件。
import QtQuick 2.0
Row {
Repeater {
model: 25
Button {
text: "foo1"
}
}
}
Row {
Repeater {
model: 44
Button {
text: "foo2"
}
}
}
Row {
Repeater {
model: 144
Button {
text: "foo3"
}
}
}
你試過在循環25,64,144次時添加一個按鈕嗎? – Thanos
是的,我創建了一些按鈕,我檢查了他們的事件。但這一切都是通過Qt的拖放界面完成的,因爲它們是2-3個按鈕,但現在我想填充整個窗口。 – Bankin
@Thanos這是我的想法,但我不知道如何創建按鈕以及如何將它放在窗口上 – Bankin