问题标签 [qgridlayout]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
178 浏览

python - 在 PyQt4 中识别 QGridLayout 中的项目

我正在尝试在 PyQt 中创建一个简单的计算器,我是 PyQt 的新手。我已经使用 QGridLayout 来显示按钮,现在我想创建信号和插槽,以便当用户单击 button2 时,QLineEdit 中会显示 2。我一直在尝试识别网格中的各个按钮,以便为它创建插槽,但我被卡住了。这是一个代码片段:

错误是无法分配给函数调用。请帮助我对它进行了研究和研究,一旦我在试验时遇到错误,QWidgetItem 没有点击属性。谢谢

0 投票
1 回答
1501 浏览

c++ - 动态创建网格布局并在 Qt 中管理它

我是 Qt 的新手,目前遇到了一些麻烦。我想从 c++ 代码在 Qt 中创建一个网格布局,并能够从那里管理它。我尝试了很多不同的东西,但没有一个有效。

基本上,我想要做的是有一个带有按钮的窗口(完成),并且通过按下按钮,窗口应该变成一个没有固定行数或列数的按钮网格。(希望我清楚我想做什么)

此时,我创建了两个 .qml ,一个 qml 文件具有第一个窗口的代码(具有唯一按钮的那个),另一个 qml 文件具有网格布局,其中没有任何内容。还有两个 c++ 文件,第一个是 main.cpp,第二个是我正在编写的代码,用于在单击按钮时“填充”网格。

同样,我是 Qt 的新手,所以如果您有更好的想法,请告诉我!

0 投票
3 回答
1009 浏览

c++ - QGridLayout 3x3 网格调整大小小部件

我有 9 个 QWidget。有时它们是看不见的。它们都在 3x3 网格中。

现在,例如,如果小部件 3 不可见,其他小部件应该调整大小:

垂直方向也是如此,基本上所有的空白空间都应该被填满,但我不知道该怎么做。当我将小部件设置为不可见时,不会占用空白空间。

在此先感谢您的帮助。

0 投票
2 回答
1060 浏览

python - PySide:创建复选框列表

我正在尝试在 PySide 中创建一个复选框列表。这些复选框将驻留在框架内的网格内。

因为我需要一百多个复选框,所以我认为最好将这些复选框存储在一个列表中。在class Ui_MainWindow(object):里面def setupUi(self, MainWindow):和里面我myChanges用. 调用我的方法self.myChanges(MainWindow, self.customCheckBoxes, self.frame, self.gridLayout)。在上面,我创建了一个空列表来尝试将对象存储在其中self.customCheckBoxes = []

Ui_MainWindow类之外,我有一个名为的单独类CreateCheckbox,它试图在框架下创建一个复选框,设置对象的名称,将其添加到网格中的某个位置并设置它的文本。据我所知,它可以很好地执行前两个,问题出现在 line 上self.grid.addWidget(self.checkBox, gridPlace, 1, 1, 1)。更具体地说,它有问题grid并引发此错误:AttributeError: 'CreateCheckbox' object has no attribute 'grid'

我的问题是:

  1. 我是否以错误的方式使用网格?
  2. 当我传递它时,我不允许在网格周围使用点吗?
  3. 我该如何解决这个问题,使复选框都沿着网格的单个文件行向下移动?
  4. 我的CreateCheckbox班级或我的myChanges方法是否在错误的地方/我应该把它们放在哪里?

编辑:我想我发现我做错了什么。in class CreateCheckbox,应该没有self.inself.grid.addWidget(self.checkBox, gridPlace, 1, 1, 1)因为网格不是CreateCheckbox类的实例

编辑 2:以防万一有人想让文本正常工作,请在周围加上引号MainWindowself.checkBox.setText(QtGui.QApplication.translate(MainWindow, text, None, QtGui.QApplication.UnicodeUTF8))这样你就有了 self.checkBox.setText(QtGui.QApplication.translate("MainWindow", text, None, QtGui.QApplication.UnicodeUTF8))

这是完整的代码:

0 投票
1 回答
897 浏览

c++ - 使用 QGridLayout 将 QScrollArea 添加到 ui->centralWidget

我想制作ui->centralWidget, 它有一个QGridLayout, 可滚动的。最简单、最舒适的方法是什么?

我尝试了一个简约的项目,但它不能正常工作。出现QScrollArea在第二个窗口中,并且测试标签未显示在任何显示的窗口中。我究竟做错了什么?

主窗口.cpp

主窗口.h

@thuga 提示后的变化:

标签不显示。

主窗口.cpp

0 投票
1 回答
2887 浏览

python - PyQt:QGridLayout 中的 setSpacing

你能告诉我如何在我的小部件中删除按钮之间的空格吗?我想通过设置 command , 来做到这一点setSpacing(0),但我不知道我应该在哪里设置它。

我的代码:

0 投票
1 回答
795 浏览

python - PyQt4窗口最大大小仅在用户移动或调整窗口大小后注册

我正在构建一个部分由 QtCreator 生成,部分由 python 代码生成的 GUI。GUI 是网格布局内的网格布局滚动区域。滚动区域包含可变数量的按钮。我的目标是调整窗口大小以紧贴按钮网格,除非按钮太多导致窗口太大,在这种情况下,我想限制窗口的大小并使滚动区域可滚动。我实现了这一点,但是当窗口太大时会出现问题,只有在我手动移动或调整窗口大小后它才会缩小到所需的尺寸。(注意“show”和“resizeEvent”函数被覆盖)

图形用户界面的图像:

在此处输入图像描述

Qt创造者:

QtCreator

蟒蛇代码:

0 投票
0 回答
56 浏览

c++ - 子类化 QGridLayout 时出错

我正在尝试将 QGridLayout 子类化以构建一个小部件以设置为 QDialog 的布局。当我尝试做“setLayout(view);” 在 View_currentSpec 构造函数中,我有一个来自编译器的错误,它说“没有为此范围声明视图”。难道我做错了什么?

0 投票
1 回答
1768 浏览

python - pyqt:删除所有项目并添加新项目时正确更新 QGridLayout

我有一个 3 列的 QGridLayout,像这样创建

用 10 个项目填充网格后,它看起来像预期的那样:

在某些事件中,网格项目发生变化,我尝试删除所有项目并添加新项目:

但随后它显示一个空单元格,如下所示:

再次调用 updateGrid 后,它有两个空单元格,如下所示:

最后,在再次强制更新后,我得到了我的预期:

如何避免空单元格?

0 投票
1 回答
413 浏览

python - PyQt如何在GUI调整大小事件之前执行功能

在 PyQt4 中,有没有办法暂停调整窗口的大小,直到函数完成?

我的问题是我创建了一个带有可能包含大量文本的文本编辑的窗口。由于我切换到使用网格布局,文本编辑也会调整大小,当有很多文本时,应用程序会挂起。我尝试覆盖 resizeEvent 以在调整大小时清除文本编辑文本,但应用程序仍然挂起,因为它仅在调整大小后才清除文本。

也欢迎其他解决方案。

python 代码(以及 .ui 文件的链接):

用户界面。文件: https ://www.dropbox.com/s/y3hxp6mjhfpv2hy/mainwindow.ui?dl=0