我正在制作一个二维网格(二维元胞自动机)。所以我为控制台制作了完整的代码。但现在我需要用 GUI 来实现它。我正在使用 linux,所以我读到 QT Creator 将是最佳选择。有人可以给我一个小提示。怎么开始比较好。您推荐使用哪些视图/widjets?任何帮助都会很有用。在 c++ 代码中,我制作了一个大小为 15/15 的元素的二维 char 数组,其元素类型为“1”或“0”。我将非常感谢任何帮助!先感谢您。
问问题
1629 次
2 回答
0
一种方法:创建一个 QImage 并使用setPixel
. 将其转换为 QPixmap 并使用 QLabel 显示它。
于 2013-11-03T23:15:43.137 回答
0
下面是如何在 GUI 上显示数组的两个简单示例。当然,也可能有其他变化,这取决于您的需要。
具有网格布局的小部件
QWidget *mainWidget = new QWidget;
QGridLayout *layout = new QGridLayout;
for (int r = 0; r < 15; r++) {
for (int c = 0; c < 15; c++) {
QLabel *label = new QLabel("1", mainWidget); // Text could be 1 or 0.
layout->addWidget(label, r, c);
}
}
mainWidget->setLayout(layout);
mainWidget->show();
使用表格视图
QTableWidget *table = new QTableWidget(15, 15);
for (int r = 0; r < 15; r++) {
for (int c = 0; c < 15; c++) {
QTableWidgetItem *item = new QTableWidgetItem("1"); // Text could be 1 or 0.
table->setItem(r, c, item);
}
}
table->show();
于 2013-11-04T07:51:56.730 回答