我有一个小部件,QVBoxLayout作为主布局,QGridLayout作为子布局嵌套在主布局中。有一个切换按钮,它在网格布局中显示/隐藏某些小部件。更新可见性之后,我想调整(最小化)小部件的大小。但是,当子部件被隐藏时,调整大小不能正常工作,小部件大小保持不变,没有像我预期的那样缩小。此外,小部件没有正确地重新绘制,一些坏的按钮片段仍然可见。我注意到,如果网格布局是主要布局(即没有垂直布局),则不会发生这种情况,但是如果它嵌套在另一个布局中,则行为奇怪。有什么办法解决这个问题吗?
宽.h:
#pragma once
#include <QWidget>
class QGrid
嘿,我整个晚上都在找答案,却找不到答案。我的QT创建者应用程序中有以下错误。我将把我的主机窗口.h,我的main.cpp和我的mainwindow.cpp也发给你,我找到了一些答案,我必须重新生成一些文件,因为编译器doas不是自己做的,并且在帮助中找到了一些命令(例如qmake -tp vc projectname.pro),但是它没有工作:(所以请帮助我几乎哭:我只想在每个插槽中更改主窗口的中心部件;)
错误
QObject::connect: No such slot MainWindow::scW(mainwindow1)
QObject::connect: (receiver na
我正在使用Python3和PyQt5开发一个小型图形应用程序。在我使用的第一台计算机上,只安装了PyQt5,代码中的一切都很好。但是,当我想在安装了PyQt4和PyQt5的另一台笔记本上运行我的代码时,我会得到以下错误:
RuntimeError: the PyQt5.QtCore and PyQt4.QtCore modules both wrap the QObject class
Python解释器定位从主文件调用的文件"ViewWindow.py“中的错误。
由于这台笔记本上有PyQt4和PyQt5,而且由于无法卸载PyQt4 (这太容易.),我想知道是否有可能强制使用PyQt
我试图将一个对象声明为extern,因为我希望一个线程能够从一个不同的文件访问和更新它。但是,当我试图编译代码时,会收到以下错误消息:
In file included from main.cpp:1:
dialog.h:43:6: error: storage class specified for ‘temperatureValue’
43 | extern QLabel *temperatureValue;
| ^~~~~~
dialog.h:44:6: error: storage class specified for ‘humidityValu
我正在做一个qt项目,我的目标是根据我的输入绘制一些东西。信号在main中,而图形在另一个对象中,我无法将它们连接起来。 int main(int argc, char *argv[])
{
QApplication app(argc, argv);
Frequency fre; //this is the class that does the drawing
QWidget *window = new QWidget;
QGridLayout *grid = new QGridLayout;
QGroupBox *groupBox = n
QWidget* centralWidget = new QWidget(this);
setCentralWidget(centralWidget);
QVBoxLayout* mainLayout = new QVBoxLayout(centralWidget);
topLineLayout = new QHBoxLayout();
minesCounterLabel = new QLabel();
emoticonButton = new QPushButton();
timerLabel = new QLabel("0
我正在尝试用更现代的C++方式更新一个小型实用程序应用程序,但我在使用std::shared_ptr的一些Qt对象时遇到了问题,特别是那些接收其他QWidget作为构造函数参数的对象。
例如:
private:
std::shared_ptr<QWidget> centralwidget;
std::shared_ptr<QVBoxLayout> verticalLayout;
public:
void setupUi(QMainWindow *MainWindow) // this pointer is a .get() from a sha
我对QT非常陌生,并尝试在运行时添加一个按钮(它在单击时发出信号)。我为加法本身加了一个插槽,但它不起作用。出于测试的目的,我在代码中添加了一个printf("Hello World");,以查看何时调用该方法。
奇怪的是,只有当我结束节目的时候我才能得到我的“你好世界”。出于测试目的,我在主目录中调用了add-方法。如果我点击按钮,什么都不会发生。当我把它从主板上移开时,我甚至都不明白了.
也许有人能告诉我我做错了什么?
ButtonCreator.h
QT_BEGIN_NAMESPACE
class QAction;
class QGroupBox;
class QPush
我真的不明白为什么widget_2和widget_3在这个网格布局中只出现一次,它们应该像"widget_1“(QLabel)那样出现5次(为了示例起见)。我使用一个for循环和zip()函数来填充这个网格布局,在一个名为"linha“的列表中使用在元组中生成的小部件填充这个网格布局,结果如下所示:
我知道如果我去:
linha = [(QLabel("anything goes"), QspinBox(), QComboBox() for i in range(5)]
它可以工作,但问题是,我需要小部件2和3作为类属性,就像MRE显示的那样。如果您知