问题标签 [qwindow]

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 投票
5 回答
82267 浏览

c++ - 如何为 Qt 应用程序的整个窗口设置背景颜色?

有谁知道如何为 Qt 应用程序的整个窗口设置背景颜色?

到目前为止,我正在使用样式表,但只能弄清楚如何将背景颜色分配给小部件,例如QGroupBoxQPushButton。基本上,如果我想要黑色背景,我将如何使它无缝而没有原始背景的任何边框?

0 投票
1 回答
110 浏览

c++ - 如何在构造函数完成后立即销毁从 QWindow 对象派生的对象?

如果构造函数中的某些条件为真,我需要QWindow在构造函数完成后立即销毁从对象派生的对象。

我想在构造函数中设置成员变量并检查窗口初始化函数。但我不知道哪个功能或信号适合这个。

0 投票
1 回答
391 浏览

qt - 识别 QWindow 中的设置/丢失焦点事件

我创建了一个 Qt-Quick 组合框,当它被按下时,它会打开一个 QWindow,我在其中显示 TableView 中的内容。问题是,无法设置 TableView 的焦点。

所以第一个问题是:如何在我的 TableView(托管在我的 QWindow 中)上设置焦点?

此外,如果用户在 QWindow 旁边或应用程序之外单击,我必须获取事件。这意味着焦点已更改,我可以关闭我的 QWindow。

所以第二个问题是:如何获取 TableView 失去焦点的信息?

提前致谢。

0 投票
1 回答
294 浏览

c++ - 将 QFileDialog 与 QWindow 一起使用

我尝试使用 OpenGL 实现应用程序,因此正如以下示例所建议的,我使用 QWindow 来创建 OpenGL 上下文。

http://doc.qt.io/qt-5/qtgui-openglwindow-example.html

在这个应用程序中,我想在按下 S 键时创建一个文件对话框。但是,QFileDialog::getSaveFileName需要QWidget. 文档说如果parent为 0,对话框将显示在父小部件的中心。我想知道在这种情况下可以简单地使用nullptras parent

例子:

0 投票
1 回答
1201 浏览

c++ - 在 QOpenGLWindow 之上添加 QWidget

我想在我的 QOpenGLWindow 之上添加 QWidget。例如:

在 qmainwindow.cpp 中:

但是mywidget在容器后面。

我怎么解决这个问题?

0 投票
2 回答
485 浏览

qt - 从批处理文件启动 Qt 应用程序

我在 Qt 和 Qt Creator 之外开发了一个应用程序,当我运行这个应用程序时,它可以工作。但是当我使用批处理文件来执行应用程序时,我得到了这个错误:

应用程序无法启动,因为它无法找到或加载 Qt 平台插件“Windows

我已经包含了所有 dll,包括 platform/qwindows.dll,但我无法理解问题所在。知道有什么问题吗?

之前,我以为我使用了一个没有正确设置的外部库,但是为了测试目的而删除了外部库后,问题仍然存在。

批处理文件的内容是:

0 投票
1 回答
499 浏览

c++ - 在 Qt 中释放和恢复嵌入式窗口

在我的 Qt 应用程序中,我需要嵌入一个原生窗口。我首先获取它的 WinId。之后,我通过以下方式创建嵌入式小部件:

它以应有的方式完美运行。但是,当我想关闭我的 Qt 应用程序并释放嵌入式窗口并将其恢复到其原始状态时,我遇到了问题。

我目前正在执行以下步骤来释放窗口:

它以某种方式起作用,但不像我想要的那样。如果我这样做,释放的窗口会保留它在嵌入时的分辨率和几何形状,这与它们原本的不同。它也不响应调整窗口大小。释放的窗口也失去了它的菜单栏。

我希望它恢复到嵌入之前的原始状态。有没有办法做到这一点?

我在 Windows 7 中使用 Qt 5.5。

0 投票
2 回答
2089 浏览

c++ - Show Qt3D stuff inside QWidget in Qt5

So I felt all warm and fuzzy inside after reading that Qt3D has re-emerged in a v2.0 and is in fact becoming a part of Qt5 soon and that parts of it is already available for testing as a tech preview.

I set out with a simple plan, I would have Qt3D working inside a widget in my existing C++/widgets based application. However the only example I could find that shows how to use Qt3D from C++ is called basicshapes-cpp, and it shows some shapes rendered in a separate OpenGL/Qt3D prepared window (class that extends QWindow) as opposed from a QWidget.

Now I read about the role of QWindow vs. QWidget and how it all hangs together neatly, but I am still struggling to understand how I can port the Qt3D code from the basicshapes-cpp program to run inside a QWidget. What are the basic steps that need to observed?

0 投票
1 回答
5423 浏览

c++ - 无法在 Qt Widget 上绘图,显示错误“paintEngine:不应再调用”

我使用 Qt Creator 创建了一个小部件,它在一个主窗口内有两个子窗口和一些按钮来加载、保存图像、设置笔宽和颜色以在窗口上绘制。但是当我开始画画时,它给了我一个错误说

有谁知道我在做什么错误,我检查了与该主题相关的线程,但找不到合适的解决方案。我也是c ++的新手,所以请帮我找到解决方案

这是我下面的代码

小部件.h

主文件

小部件.cpp

小部件.ui

0 投票
1 回答
538 浏览

c++ - 为什么设置 Qt::SplashScreen 标志会阻止关闭

我有QMainWindow哪个嵌入了QQuickWidget.
根据应用程序的状态(初始化或未初始化)QQuickWidget显示两个不同的 qml (splash.qml和)。main.qml

我希望我的窗口在显示时处于splashScreen模式splash.qml,所以我这样做了:

当初始化完成并加载另一个 qml 文件时,QML 会触发一个插槽。然后我将标志重置为默认值以从 splashscreen 返回:

一切都按预期进行,但是当我尝试关闭我的应用程序时,它永远不会到达末尾,main()而如果我不应用Qt::SplashScreen标志,它会很好地关闭。

我应该怎么做才能关闭我的应用程序?