问题标签 [qmainwindow]
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.
c++ - 为什么我的 qt centralWidget(一个 QGLWidget)不能正确调整大小?
我有一个带有 QMainWindow 的应用程序,理想情况下应该有一个 QGLWidget 以它为中心,在外部留有空间用于工具栏和其他顶部/侧面小部件。
不幸的是,无论 QGLWidget 设置为什么大小或几何形状,它看起来都很大并且占据了整个主窗口!
基本上,设置如下:在main()中调用CreateWindow(),构造主窗口,调用函数Init(),构造GLWidget。因此,在我改编的主窗口类的成员 Init() 中,我基本上有:
现在,为了使 GLScene 符合其所需的大小和位置,我首先尝试在 GLWidget(也就是我的直接从 GLWidget 派生的类)构造函数中设置它的几何图形:
然而,这根本不起作用,仍然占据了整个主窗口。相反,我尝试将 setGeometry 调用放入 Init()。我在 setCentralWidget(); 之前和之后都试过了。两种选择都不起作用。也没有完全删除 setCentralWidget 调用(事实上,这使得 GLWidget 消失了)。
既然这显然不能正常工作,那么缩放 GLWidget 的正确方法是什么?还是只是我需要更深入地研究事物的顺序问题?
qt - 将输入从 qdialog 传输到主窗口
在 qdialog 中,我在主窗口中输入了一些我需要的输入,我怎样才能得到它们?我的程序是这样的,我有一个必须在主窗口之前打开的 qdialog,我在那里输入一些输入并单击确定,然后使用这些输入打开 mainwinodw。
这是 dialog.cpp 代码:
我怎样才能得到 bmp, xMax, ... 在主窗口中使用
qt - 隐藏 qdialog 并显示主窗口
我有一个 Qdialog,我可以在其中获得一些输入以在我的主窗口上使用。所以它必须比主窗口先出现。
问题是我的主窗口没有出现。这是我的 main.cpp
我有一个按钮,按下时隐藏 qdialog,如果它被隐藏,主窗口应该显示出来,对吗?
这是我使用的 SLOT:
主窗口只能在单击该按钮后启动,因为只有这样我才能输入到主 winodw
qt - 存储来自 qdialog 的变量以在 qmainwindow 中使用
我创建了一个 dialog.h、dialog.cpp 和一个 dialog.ui,我在对话框中有 qlineedit,还有 ok 和 cancel 按钮,我想存储这些 linedit 信息以在不同的主窗口中使用文件。这是我的对话代码。
如何在 mainwindow.cpp 中使用 xMax 的值?
这是我的对话.h
这是我的 main.cpp
那么我想用 xMax 在主窗口 planevolume.cpp 中计算一些东西
c++ - QMainWindow 中的 QT 4.8 填充
我开始学习QT。当我创建一个 MainWindow 并在布局中放置一些小部件时,窗口边缘和小部件之间存在间隙,如下所示:
我怎样才能关闭这个差距?
layout()->setContentsMargins(0,0,0,0);
和编辑窗口的样式表,但没有效果。我该怎么办?
python - 使用 Qt 在 Python 中调整主窗口大小
我在ui_main.py
文件中有一个 gui(在 Qt Designer 中设计)。我以这种方式将它加载到我的主*.py
文件中:
ui_main.py 文件:
我需要在应用程序启动期间调整主窗口的大小。我的主要问题是我无法访问主窗口对象。
如果我添加到ui_main.py
文件:
我可以调整我的主窗口大小:
但我知道编辑生成的 ui 文件非常糟糕。如何在不编辑 gui 文件的情况下调整主窗口的大小?
c++ - 从 Qt 中的对话框中获取数据并在 Ui 中使用它
所以我正在使用 Qt 制作一个文本编辑器,现在我有一个按钮可以打开一个名为“格式化文本”的对话框。我希望它的工作方式类似于记事本中名为“字体”的对话框,您可以在其中从一些下拉列表中选择一些文本属性,它会向您显示文本的外观。现在我可以在其中选择字体样式、字体颜色和字体大小并点击预览,它会在对话框中的一个框中向您显示文本的外观。但是,我有一个名为“okay”的按钮,它应该更改突出显示的文本或您将要输入的文本,但我不知道如何在主窗口上显示这些更改。这 。ui 文件是私有的,许多已经创建的函数和指针在每个 ui 文件中都是相同的,所以如果我将 ui 文件更改为公共文件,我必须更改一大堆东西。无论如何可以给我一个简单的答案吗?我试图以尽可能少的混乱来做到这一点。对于我的技能水平的人来说,更多的编码和更少的混乱比更少的编码和更多的混乱要好。抱歉,这是一个巨大的段落,我没有提供任何代码,但我认为代码不是必需的,但是如果您确实需要一些代码,我很乐意分享。感谢您的帮助和时间。我希望你们有一个愉快的夜晚。对于我的技能水平的人来说,更多的编码和更少的混乱比更少的编码和更多的混乱要好。抱歉,这是一个巨大的段落,我没有提供任何代码,但我认为代码不是必需的,但是如果您确实需要一些代码,我很乐意分享。感谢您的帮助和时间。我希望你们有一个愉快的夜晚。对于我的技能水平的人来说,更多的编码和更少的混乱比更少的编码和更多的混乱要好。抱歉,这是一个巨大的段落,我没有提供任何代码,但我认为代码不是必需的,但是如果您确实需要一些代码,我很乐意分享。感谢您的帮助和时间。我希望你们有一个愉快的夜晚。
layout - Qt4:隐藏次要小部件,同时保持中央小部件的大小
我有一个带有主要“显示”小部件和几个小部件的 QMainWindow。我希望能够在鼠标进入或离开窗口时打开/关闭小部件。
我可以通过实现enterEvent
和leaveEvent
调用显示/隐藏不必要的小部件来实现这个基本功能。然而,Qt4 的默认行为是保持 QMainWindow 几何形状固定,并调整重要的小部件的大小。我宁愿维护这个小部件的几何形状,并根据需要移动/调整 QMainWindow 的大小。这可能吗?
这是 PyQt4 中的一个简化示例
我希望 MyWidget 的边界改变为环绕此按钮,而不是“主要”按钮的增长/缩小。
qt - 检测 QMainWindow / QDialog (Qt 4.8) 的移动结束
我在 X11 上使用 Qt 4.8.3。
我需要知道用户何时结束在屏幕上拖动窗口,以便读取最终位置并最终启动动画以将窗口位置调整为“允许”位置。
我注意到QWidget::moveEvent
每个小动作都会调用 ,但这非常不方便,因为我必须在用户释放鼠标按钮并且移动完全完成时才执行位置检查(并最终启动动画)。
这是真正的问题:当用户单击标题栏时,似乎没有办法检测鼠标释放事件(或获取鼠标按钮状态),因为它是由操作系统而不是 Qt 控制的。我也尝试了QWidget::x11event(XEvent* e)
...但是事件只收集在窗口内,而不是标题栏。
有人知道实现这一目标的方法吗?
我怀疑我将不得不自己重新实现标题栏……太糟糕了……</p>
qt - QMainWindow 析构函数
为什么 QMainWindow 的析构函数不是虚拟的?如果我从 QMainWindow 继承一个类 MainWindow 并在其上有一些指针属性,我无法使用 MainWindow 的析构函数删除内存。