草庐IT

Qt-Linux

全部标签

windows - QT:直接渲染到 DC 的滚动小部件

我正在尝试创建一个小部件,它通过调用getDC()并向其绘制HBITMAP来直接绘制到Windows设备上下文。我正在绘制的小部件位于滚动小部件内。我已经实现了paintEvent(),它看起来确实在绘画,但在绘画之后,小部件立即再次被涂上了空白的灰色。我试过设置WA_PaintOnScreen和Qt::WA_NoSystemBackground但这些都没有帮助。理论上这应该是可能的,因为这基本上就是GLWidget的工作方式。我错过了什么? 最佳答案 在这里找到答案:http://www.qtchina.net/qt4c++gui

c++ - Windows 和 Linux 中的毫秒级随机种子

我需要在boost(从int加载)中为几个进程播种随机数生成器,用于必须在Windows和Linux中编译和运行的程序。我使用了std:time(0),它起作用了,但由于进程是同时运行的作业,其中一些会在同一秒运行,产生相同的结果。所以我需要从毫秒开始播种,或者任何其他跨平台随机生成器。我尝试了clock()但无法完全将其从time_t转换为int。谢谢。 最佳答案 您最好使用特定于平台的随机数源。在Linux上,使用/dev/urandom并读取几个字节。在Windows上,获取几个字节的熵的简单方法是UuidCreate.

virtualbox 和 linux/windows 上的 android-x86

我读到我可以在模拟器上测试android应用程序,但我也可以使用Virtualbox,这样应用程序会更快。网上有很多关于Virtualbox的教程,但是都提示我必须选择LinuxonVirtualBox。我知道Android的内核是LinuxKernel2.6,但问题是:我还可以选择Windows吗?用Linux会更快吗?这是一个简单的好奇心。x86是体系结构,我认为我可以在Virtualbox上使用Linux、Windows或MacOSX。非常感谢你提前 最佳答案 对于Android,您需要选择Linux,因为在Android之下

c++ - Qt - 记住最后检查的单选按钮

我有3个单选按钮和一个旋转框。每个单选按钮应该分别将旋转框值更改为英寸、英尺或米。我该怎么做?我必须知道最后激活的是哪个单选按钮,对吗?有人可以给我一些示例代码吗? 最佳答案 单选按钮和复选框将它们的状态保存为值,并将其公开给您的用户。您可以调用isChecked()了解您的成员变量单选按钮的状态。有点像voidsome_button_hit(boolchecked){if(inches.isChecked()){...}elseif(feet.isChecked()){...}elseif(meters.isChecked()){

linux - 部署守护进程的过程和位置

我是Linux新手。我最近将我的C++窗口服务移植到linux守护进程。在Windows中,我有以下文件夹结构。我发现这个结构很容易让其他同事跟随并升级到新版本。C:\services\my_app\version_1_0\my_app.exeC:\services\my_app\version_1_0\my_app.config.xmlC:\services\my_app\version_1_0\dependencies1.dllC:\services\my_app\version_1_0\log\my_app_20121110.logC:\services\my_app\versi

c++ - 模板特化导致 Windows 上的 MinGW 链接错误,而不是 Linux 上的 GCC

以下build设置在使用GCC(4.6.3)的Linux上运行良好,但不适用于使用GCC(4.7.2)的MinGW。$catMakefileall:g++-cfoo.cppg++-cbar.cppg++bar.ofoo.o-obar$catfoo.h#ifndefFOO_H#defineFOO_H#includetemplatevoidfoo(Tx){std::cout$catfoo.cpp#include"foo.h"templatevoidfoo(intx){std::cout$catbar.cpp#include"foo.h"intmain(){foo(1);}在Linux上,我

linux - 使用 -C 选项和通配符的 tar 文件

我正在将tar命令传递给应用程序中的shell执行器。但似乎我的tar语法不正确。(这是Windows(bsdtar命令),但据我所知与Linux的工作方式相同;如果需要,我也可以在Linux上进行测试。)我正在尝试对所有以ext结尾的文件进行targz,而不将完整路径存储在我的tar文件中。tar-cvzftest.tar.gz-CC:/mydir/toTar/*.ext我得到一个错误:tar:*.ext:Cannotstat:Nosuchfileordirectory我可以给出整个路径,但我的tar将包含C->mydir->toTar->。我只想要结果中的文件,而不是mydir和t

windows - 如何在 Windows 上使用 Qt 获取开放端口的进程名称和二进制路径?

我正在编写一个端口冲突检查函数。我需要确定:如果某个端口是开放的守护进程的进程名守护进程的二进制路径我的想法是运行一个QProcess,执行native命令netstat-abno并解析输出。但是参数-b需要提升权限(UAC),我不想用UAC提示来打扰用户。是否有提供此类功能的Qt库?您将如何实现? 最佳答案 您可以使用Tcpvcon.exe,它是TCPView的一部分TCPView需要管理员权限,tcpvcon不需要与-an或-acn一起使用您甚至可以指定以后要检查的应用程序:例如Tcpvcon.exe-Skype最初由Dane发

c++ - 在 Qt 中使用第三方 dll(没有可用的 .lib 文件)

这个问题在这里已经有了答案:Howtomakea.libfilewhenhavea.dllfileandaheaderfile(6个答案)关闭8年前。我的一个friend让我创建一个应用程序来使用“VellemanVM167”来控制一些东西。这个VM167只不过是一个带有一些GPIO和几个ADC的USB接口(interface)卡。此VM167附带一个SDK,由两个DLL(VM167.dll和MPUSBAPI.dll,怀疑第一个DLL中使用了最后一个)和一个头文件VM167.h组成我以前在Delphi中成功使用过该卡,但现在想转换为Qt。由于这只是一个简单的项目,我认为现在正是时候。我

linux - 使用 Windows 开发/使用 Unix 托管时的文件权限问题

我正在我的windows笔记本电脑上开发一个网站,我使用Git进行版本控制。当我将我的文件添加到Git时,它们是在644模式下添加的。问题是,在我的Linux服务器上,我需要文件为775。所以我所做的是,每次部署时,我都必须在我的Linux服务器上运行chmod775-R.,然后提交模式更改。这真的很烦人、耗时,并且会导致很多奇怪的提交。我的问题是,如何让我的IDE(PHPStorm)以775模式直接创建文件?我知道Windows不使用与UNIX相同的文件权限系统,但必须有一种方法可以在Linux中转换为775的Windows上设置文件权限吗?我尝试使用Cygwin或类似工具在Wind