我正在使用 GUI 构建一个简单的 C++ 应用程序。我正在使用最新的 Qt (5.2)。所以我的问题 - 我想在我的窗口上构建类似扫雷字段的东西,我想问如何在程序代码中创建按钮,以便我可以创建不同大小的字段。一定有办法,否则我将不得不将 25、64 和 144 按钮放在三个单独的窗口中,这是不正确的。
编辑:我知道它会出现一些循环,但我缺少有关“创建按钮”的代码以及有关将其放置在窗口上并定位它的代码。
提前谢谢
最佳答案
您有两种不同的方法来解决这个问题:
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带有 Repeater 和/或 Grid 的组件,具体取决于您对布局的具体需求。
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"
}
}
}
关于c++ - 在代码中生成 Qt 按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20962987/