
linux系统下可以如此考虑这个问题如果你的Qt程序涉及到非linux系统,估计不适用。
思路:在/proc 目录下有很多个以数字命名的文件夹,文件夹里面有个名字为 stat的文件,这个文件夹里面记录了PID为该数字的进程的一些信息,当然也包括你需要的进程名字。
基本思路就是这样了,看你怎么处理了。
1、首先,开发多个Qt应用程序,每个应用程序都有独立的UI界面和业务逻辑。
2、在系统启动时,启动器程序会运行,启动器程序是一个Qt应用程序,它的主要功能是控制其他应用程序的启动和关闭。
3、启动器程序需要在主窗口中显示多个按钮或菜单项,每个按钮或菜单项代表一个应用程序。
4、当用户点击一个按钮或菜单项时,启动器程序会启动对应的应用程序,并将应用程序的窗口显示在主窗口中,用户可以在主窗口中切换不同的应用程序。
5、当用户关闭一个应用程序时,启动器程序会将该应用程序的窗口关闭,并释放对应的资源。
Windows下的exe可执行文件的属性中有版本这个信息,含有版本信息、描述、版权等。对于qt程序,要含有这样的信息,那就请如下 *** 作:新建<工程名>rc文件,在rc文件填入下的信息:
#if defined(UNDER_CE)#include <winbaseh>#else#include <winverh>#endifVS_VERSION_INFO VERSIONINFO FILEVERSION 1,0,0,0 PRODUCTVERSION 1,0,0,0 FILEFLAGSMASK 0x3fL#ifdef _DEBUG FILEFLAGS VS_FF_DEBUG#else FILEFLAGS 0x0L#endif FILEOS VOS__WINDOWS32 FILETYPE VFT_DLL FILESUBTYPE 0x0L BEGIN BLOCK "StringFileInfo" BEGIN BLOCK "080404b0" BEGIN VALUE "CompanyName", "BeiJing XXXX Co, Ltd" VALUE "FileDescription", "Industrial Control System" VALUE "FileVersion", "1000" VALUE "InternalName", "Qt Studioexe" VALUE "LegalCopyright", "Copyright (C)2001-2013" VALUE "OriginalFilename", "Qt Studioexe" VALUE "ProductName", "Qt Studio" VALUE "ProductVersion", "1000" END END BLOCK "VarFileInfo" BEGIN VALUE "Translation", 0x804, 1200 END END
然后将pro文件的RC_FILE = <工程名>rc,如此一来编译生成的程序就会含有版本信息。
正常继承QWidget然后实现void keyPressEvent(QKeyEvent event);是能得到key事件,但是要控件获得焦点的时候才可以
如果你想全局捕获鼠标事件
直接实现重新继承实现QApplication
Qt4实现这个函数virtual bool winEventFilter(MSG msg, long result);
Qt5好像没有上面的函数了,所以用:
KeyNativeEventFilter m_keyFilter = new KeyNativeEventFilter();
installNativeEventFilter(m_keyFilter);
然后实现nativeEventFilter:
bool KeyNativeEventFilter::nativeEventFilter(const QByteArray &eventType, void message, long result)
{
#ifdef WIN32
MSG msg = (MSG )message;
if(WM_HOTKEY == msg->message){
const quint32 keycode = HIWORD(msg->lParam); //键盘按键key值
const quint32 modifiers = LOWORD(msg->lParam);
}
}
#endif
return false;
}
#include "mainwindowh"#include #include int main(int argc, char argv[]){ QApplication a(argc, argv); if (NULL != argv) { // 主函数入口,默认都带有一个参数,就是本程序的名字 qDebug()
以上就是关于Qt如何获取所有的linux进程全部的内容,包括:Qt如何获取所有的linux进程、嵌入式qt跑多个应用、请问下各位大侠,小弟接触QT不到2个星期,想问下,用QT开发出的exe程序属性里如何能显示出版本的信息等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)