Articles of qt

附加的孩子QProcess outlving父母

我有一个Qt应用程序(Qt 5.5),从Windows上的USB驱动器启动。 在主要我使用QProcess ::开始(不QProcess :: startDetached)开始一个新的进程。 当杀害父母孩子继续并且运作正常。 父进程不再列在我的taskManager中,所以它似乎真的死了。 有谁知道为什么会发生这种情况?

setWindowFlags(Qt :: WindowStaysOnTopHint)隐藏了Qt窗口

我想让我的Qt窗口保持在最前面。 当执行setWindowFlags(Qt::WindowStaysOnTopHint) ,窗口变为隐藏(在Windows 7上)。 我也试过: Qt::WindowFlags flags = windowFlags(); setWindowFlags(flags | Qt::WindowStaysOnTopHint); 而且,它仍然是一样的。 我在这里做错了什么?

QT5字体在各种平台上渲染不同

我想做一些自定义小部件渲染的可重复testing。 为了做到这一点,我把它们绘制到一个QImage上,并将结果保存为PNG。 与MacOSX相比,Windows的输出真的不同。 我照顾了: 在所有平台上select相同的字体(我提供“TTF”字体文件并将代码指向它) 绘制到一个QImage,而不是一个QPixmap,如文档说,QImage的画家应该是平台独立 我还select了Antialisating和TextAlliiasing提示 通过QFontDatabase :: font()请求字体,以便指定pointSize而不是pixelSize 我如何确保所有平台上的渲染都完全相同,以便我的testing运行可以重现? 换句话说,是否有可能迫使QT5在所有平台上使用相同的字体引擎(例如freetype)? ** 我把这个问题归结为一个简单的渲染testing程序。 所以代码如下所示: QFontDatabase fontDb; fontDb.addApplicationFont("…/fonts/Vera.ttf"); QImage result(width, height, QImage::Format_RGB32); QPainter painter(&result); painter.setRenderHint(QPainter::Antialiasing); painter.setRenderHint(QPainter::TextAntialiasing); QBrush background(QColor(205, 205, 205)); painter.fillRect(0, 0, 800, 600, background); QFont font = fontDb.font("Bitstream Vera Sans", "Normal", 10); painter.setFont(font); painter.setPen(QColor(0, 0, 0)); painter.drawText(10, 10, "ABCD abcd 01234567"); 例如Bitstream Vera字体可以在fontsquirel.com上下载。 在MacOSX(左)和Win32(右)上查看结果非常不同: […]

如何在没有安装Qt的情况下运行Qt程序?

我已经用Qt5.3.1编写了一个程序,并在我的开发机器上运行,它工作正常。 我将所有必需的.dll文件复制到我的.exe所在的文件夹中。 这些是: Qt5Widgets.dll Qt5Network.dll Qt5Gui.dll Qt5Core.dll icudt51.dll icuin51.dll icuuc51.dll libgcc_s_dw2-1.dll libwinpthread-1.DLL 的libstdc ++ – 6.dll 现在我想在没有安装Qt的机器上运行该程序。 我怎么做? 用户不需要为了使用程序而安装IDE,对吧? 开发机器的细节在哪里工作: Windows 8 Qt 5.3.1 部署平台是: Windows Vista 没有安装Qt,但所有必需的.dll都已安装 我得到的错误是第一: 此应用程序无法启动,因为它无法find或加载Qt平台插件“窗口”。 重新安装应用程序可能会解决此问题。 下一个错误信息是: 此应用程序请求运行时以不寻常的方式终止。 请联系支持。 然后程序崩溃。 但是,如果我安装Qt5.3.1它的作品。 所以它与c:/Qt目录中的文件有关

如何检测Windows关机或在Qt注销

我正在将一个Linux应用程序移植到用Qt编写的Windows中。 应用程序需要在closures之前保存一些设置。 在Linux上,我们可以通过SIGTERM的信号处理程序来做到这一点。我如何在Windows上实现相同的function。

Qt5 QSlider调色板在windows下无效

我用 slider->setPalette(QPalette(mycolor, mycolor)); 为滑块着色(Qt5)。 在Linux下,这个效果很好,但在Windows 7下,滑块看起来完全正常,没有任何颜色变化。 有什么办法可以在windows下获取彩色滑块吗?

把窗口放到前面 – > raise(),show(),activateWindow()不起作用

在我的Qt应用程序中,我在默认浏览器中打开一个URL。 之后我想把应用程序的主窗口再次带到前面。 我尝试了所有可以find的方法,但都没有成功。 它所做的只是在窗口7的任务栏中闪烁。下面是一个例子: this->viewer->show(); this->viewer->raise(); this->viewer->activateWindow(); * viewer是一个指向从QDeclarativeView派生的QmlApplicationViewer的指针

windeployqt错过了一些库,并获取其他不需要的

通常要部署一个Qt项目我要么: 继续运行它,并find它抱怨的库缺失,并添加它们,直到没有更多。 使用依赖的步行者,让我最大的方式(如果不是全部),然后回到选项1。 或者只是创build一个静态链接的版本(有时在屁股疼痛) 所以我现在想试试windeployqt,对于我在D:\install\Qt\5.5\mingw492_32\bin\ 然后我运行它使用: D:\>D:\install\Qt\5.5\mingw492_32\bin\windeployqt.exe d:\software\build-qtGuiTestApp-Desktop_Qt_5_5_0_MinGW_32bit-Debug\debug 这里是结果输出: D:\software\build-qtGuiTestApp-Desktop_Qt_5_5_0_MinGW_32bit-Debug\debug\qtGuiTes tApp.exe 32 bit, debug executable Adding Qt5Svg for qsvgicond.dll Skipping plugin qmldbg_qtquick2d.dll due to disabled dependencies. Skipping plugin qmldbg_tcpd.dll due to disabled dependencies. Direct dependencies: Qt5Core Qt5Network Qt5WebKitWidgets Qt5Widgets All dependencies : Qt5Core Qt5Gui Qt5Multimedia Qt5MultimediaWidgets Qt5Networ k Qt5OpenGL Qt5Positioning Qt5PrintSupport Qt5Qml Qt5Quick Qt5Sensors Qt5Sql […]

无法在Qt Creator中检索debugging输出

在Windows上的Qt Creator中, qDebug()语句不起作用,并且在输出窗口中显示以下消息: 无法检索debugging输出。 如何解决?

如何在C ++ / QT中创buildWindows服务?

我想创build一个Windows服务,只logging屏幕并将logging的文件发送到服务器。 但每当我search谷歌的Windows服务创build,我总是得到.NET的结果。 我怎样才能做一个简单的服务,而不是.NET? 我会弄清楚其余的。 我更喜欢Qt或C ++,但我找不到任何东西。