Articles of qt

Qt QPSQL驱动程序问题

我试图连接postgresql与Qt SQL模块。 我成功地编译了psql驱动程序(src \ plugins \ sqldrivers \ psql)。 但是当我尝试连接postgresql,我得到这个消息; QSqlDatabase: QPSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QMYSQL3 QMYSQL QODBC3 QODBC QPSQL7 QPSQL 我在Windows XP SP3中使用PostgreSQL 8.3,Qt 4.7.1和Visual Studio 2008(我也试过,但是没有帮助)

CreateProcess可以启动一个进程,但QProcess不能…为什么?

我正在写一个Windows QT应用程序,需要启动其他应用程序。 如果我使用下面的窗口调用一切工作正常: QString qsExePath = "C:\\Program Files (x86)\\Some Company\\SomeApp.exe"; QString qsCommandLine = ""; DWORD dwLastError = 0; STARTUPINFO startupInfo; ZeroMemory(&startupInfo, sizeof(startupInfo)); startupInfo.cb = sizeof(startupInfo); startupInfo.dwFlags = STARTF_USESHOWWINDOW; startupInfo.wShowWindow = (WORD)1; PROCESS_INFORMATION processInfo; ZeroMemory(&processInfo, sizeof(processInfo)); if (CreateProcess((TCHAR*)(qsExePath.utf16()), (TCHAR*)(qsCommandLine.utf16()), NULL, NULL, FALSE, 0, NULL, NULL, &startupInfo, &processInfo)) { CloseHandle(processInfo.hProcess); CloseHandle(processInfo.hThread); } else { dwLastError = GetLastError(); […]

用Qt编程的USB编程

无论如何,我可以在Qt中做USB编程吗? 我正在使用基于Qt 5.0.0的Qt Creator 2.6,它是最新的与Microsoft Visual Studio 2010编译器一起使用的Qt Creator。 我有一个名叫“ Dreamcheeky雷电导弹发射器 ”的玩具,我需要编程这个基于USB的设备。 我曾尝试过LibUSB,但它搞砸了一切。 它甚至重命名设备端口,我不得不使用USBDview软件撤消一切。 但我想我安装不正确。 我遵循这些指示 。 这是64位的指令,但我得到了32位,因为指令似乎没有很大的区别(而不是下载文件)我跟着它。 这是我下载的 – libusb-win32-bin-1.2.6.0.zip 无论你推荐什么API,都不要紧,甚至libusb,但请告诉我如何正确安装它。 我的操作系统是Windows 7的最终32位。

Qt:QPainter + GDI在相同的部件?

我试图使用这里描述的方法在同一个小部件上使用QPainter和GDI调用。 不幸的是,这个教程似乎已经写在Qt的早期版本上,现在它不能工作。 我设置WA_PaintOnScreen标志并重新实现paintEngine()返回NULL。 然后在paintEvent()创build一个QPainter,使用它,然后使用一些GDI调用来绘制位图。 GDI调用工作正常,但QPainter什么都不做。 我在控制台上得到以下错误: QPainter::begin: Paint device returned engine == 0, type: 1 这是不是支持了? 我该怎么做? 我也尝试在GDI绘画小部件的顶部创build一个额外的小部件,但是由于顶部小部件显示为黑色并阻止了GDI小部件,所以效果不佳。

Qt4自定义窗口框架像在办公室2007年?

有没有办法强制Qt4绘制类似于Office 2007/2010的窗口框架? 我希望我的应用程序在所有的Windows版本中看起来都不一样,只是vista / 7。 也许有一些扩展到QMainWindow? 感谢帮助。

为什么不是QString :: localeAwareCompare()正常工作

一位芬兰客户告诉我,芬兰语的正确sorting(locale aware)是:az,å,ä,ö。 但是QString :: localeAwareCompare()在Windows Vista的Qt 4.4.2中将它返回为:a,ä,å,bo,ö,pz。 #include <qapplication.h> #include <qlocale.h> #include <iostream> #include <tchar.h> int main( int argc, char* argv[] ) { QLocale::setDefault ( QLocale( QLocale::Finnish ) ); QApplication app( argc, argv ); QString s1 = "a"; QString s2 = "ä"; QString s3 = "å"; QString s4 = "b"; QString s5 = "o"; QString […]

如何configurationQt从Linux到Windows目标的交叉编译?

我想要使​​用Linux x86_64主机来交叉编译Qt库(最终是我的应用程序)以获得Windows x86_64目标。 我觉得我很接近,但是我可能对这个过程的某些部分有一个根本性的误解。 我开始在我的Fedora机器上安装所有的mingw包,然后修改win32-g++ qmake.conf文件以适合我的环境。 不过,我似乎被Qt: -platform和-xplatform一些看似明显的configuration选项卡住了。 Qt的文档说,平台应该是主机架构(你正在编译的地方),- -xplatform平台应该是你希望部署的目标平台。 在我的例子中,我设置了-platform linux-g++-64和-xplatform linux-win32-g++ ,其中linux-win32-g ++是我修改的win32-g ++configuration。 我的问题是,执行configuration这些选项后,我看到它调用我的系统的编译器,而不是交叉编译器(x86_64-w64-mingw32-gcc)。 如果我省略-xplatform选项并将-platform设置为我的目标规范(linux-win32-g ++),那么它会调用交叉编译器,但是如果发现某些与Unix相关的函数没有定义,则会发生错误。 以下是我最近一次尝试的一些输出: http : //pastebin.com/QCpKSNev 。 问题: 当从Linux主机交叉编译类似Qt for Windows的应用程序时, 是否应该调用本地编译器? 也就是说,在交叉编译过程中,我们不应该只使用交叉编译器吗? 当我指定-xplatform选项时,我不明白为什么Qt的configuration脚本会尝试调用我的系统的本机编译器。 如果我正在使用mingw交叉编译器,那么我何时需要处理规格文件? 海湾合作委员会的规格文件仍然是我的一个谜,所以我想知道如果这里的一些背景将帮助我。 一般来说,除了在我的qmake.conf中指定一个交叉编译器之外,我还需要考虑什么呢?

如何在build立后在Windows上安装Qt?

我找不到有关如何安装在Windows上构build的Qt的任何信息。 在wiki文章中如何在Mac和Linux上设置阴影构build在configure脚本中有-prefix选项的描述,但是这个选项在Windows上不可用。 我知道我可以从build文件夹中直接使用Qt,但是不执行安装步骤似乎不正确。 这种方法的一个问题是大小, Qt的生成文件夹需要大约4GB的空间,而使用二进制安装程序安装Qt需要大约1GB的空间。 我猜这个区别是由于在构build过程中创build的临时文件。 我希望一些安装程序会安装(复制)只需要在build文件夹中留下临时文件的文件。

如何添加自定义菜单,右键单击文件/文件夹以编程方式在c + + / QT?

我们有一个应用程序,像保pipe箱一样同步文件和文件夹。 这是一个基于c ++ / QT的安装程序。 我们想添加一个文件或文件夹的右键上下文菜单中的自定义菜单,就像Dropbox在下面的屏幕截图中所做的一样。 我们针对Windows和Mac平台。 任何人都可以build议我如何开始呢?

Qt Creator无法find标题(说:“没有这样的文件或目录”)

我该如何告诉Qt Creator 2.4.1(基于Qt 4.7.4 32位)在哪里默认查看头文件? 当我在Qt Creator中打开一个C文件并说 #include <stdio.h> 它强调线和说 stdio.h: No such file or directory 我想告诉它在我select的目录中查找标题; 我该怎么做呢? 更新 我想我也应该问:这甚至可能吗? 或者每次我想编辑一个独立的C ++文件时,是否必须创build一个完整的项目?