qt里标识操作系统的宏

qt文件里的 windows的宏是Q_WS_WIN32
/*
   The window system, must be one of: (Q_WS_x)

MACX     - Mac OS X
     MAC9     - Mac OS 9
     QWS      - Qt for Embedded Linux
     WIN32    - Windows
     X11      - X Window System
     S60      - Symbian S60
     PM       - unsupported
     WIN16    - unsupported
*/

如:Q_WS_X11   代表的是linux 系统

可以通过:

#ifdefine Q_WS_X11   
#else
#endif

的方式进行调用

qt里标识操作系统的宏

时间: 2024-08-26 03:41:07

qt里标识操作系统的宏的相关文章

QT里终止一个线程

话说QT里不能直接终止一个线程,这和WINAPI对线程的控制有些不一样,这个问题有时候还是比较麻烦的,比如希望能够立刻终止线程的某些场合.稍微总结一下几种方法: 1. 使用QT API threadVector[i]->terminate(); //终止线程 threadVector[i]->wait(); //阻塞等待 参考:http://blog.csdn.net/u012150179/article/details/17618769 2. QT应该能够直接调用WINAPI,那么就当它是V

Qt国际化(Q_DECLARE_TR_FUNCTIONS() 宏给非Qt类添加翻译支持,以前没见过QTextEncoder和QTextDecoder和QLibraryInfo::location()和QEvent::LanguageChange)

Internationalization with Qt 应用程序的国际化就是使得程序能在国际间可用而不仅仅是在本国可用的过程. Relevant Qt Classes andAPIs 以下的类支持Qt的国际化. QTextCodec QTextDecoder QTextEncoder QTranslator QLocale Languages and WritingSystems 有时,国际化是比较简单的,例如,把美国的应用程序让澳大利亚或英国的用户可访问,只需要简单的改变拼写.但是,把美国的

QT里使用sqlite的问题,好多坑

1. 我使用sqlite,开发机上好好的,测试机上却不行.后来发现是缺少驱动(Driver not loaded Driver not loaded),代码检查了又检查,发现应该是缺少dll文件(系统不提示,是自己使用 QMessageBox::warning(NULL, ("error"), database.lastError().text());后猜到的).于是自己千方百计的想办法,反复测试,就是不行.结果悲剧的发现,原来是多次设置路径错误,浪费一上午时间.应该直接在可执行exe

论XCODE工程里使用的宏定义.

在XCODE开发过程中,经常会遇到引用头文件,引用库路径的问题,如果不是直接的源码引入,则需要在工程中增加设置.虽然现在有了Pod这类集合管理工具,但有时为了一个很小的lib引入Pod这尊大神还是有点杀鸡用牛刀.在这里讨论下怎么使用XCODE中的几个宏在调整路径.$(SRCROOT),这个宏的含义是指工程的XCODEPROJ文件所在的路径,后面的所有目录都以该路径为参照 设置头文件搜索路径. 关于路径的定位,有个简单的方法,在终端里用ls查看,起始目录是xcodeproj所在目录,只要能ls到你

【ask】vc11 sln文件里加入新的vcxproj已有vcxproj里的用户宏没有自动复制过来

今天在quick-cocos2d-x生成的sln,需要添加一个新的自己的lib,以前就是直接把.h和.cc文件直接添加过去(为了省事呗),今天时间宽裕索性还是新建一个vcxproj吧,然后用静态lib调用的方式. 一切按照既定的方式进行着,但是新生成的vcxproj不知道为什么没有$(EngineRoot)这个宏.因为确实有一段时间没有接触vc这个ide了有些生疏,依稀记得vc9之后有个属性管理器这么个东西,于是继续 到属性管理器去找,发现 双击进去看看 在用户宏里发现了这个路径设置.

Qt中的Q_D宏和d指针

Q_D的设置意在方便地获取私有类指针,文件为qglobal.h. 1 #define Q_D(Class) Class##Private * const d = d_func() d_func()函数如下实现: 1 #define Q_DECLARE_PRIVATE(Class) 2 inline Class##Private* d_func() { return reinterpret_cast<Class##Private *>(qGetPtrHelper(d_ptr)); } 3 inl

Using 3D engines with Qt(可以整合到Qt里,不影响)

A number of popular 3D engines can be integrated with Qt: Contents [hide] 1 Ogre 2 Irrlicht 3 OpenSceneGraph 4 Open Inventor 5 Panda3D 6 Visualization Library 7 VTK (The Visualization Toolkit) 8 Qt 3D Ogre Ogre Website QtOgre QML Ogre Irrlicht Irrlic

关于在Qt里让程序休眠一段时间的方法总结

出处:http://hanzhaoxin.cnblogs.com/ Qt 为何没有提供 Sleep 论坛上不时见到有人问: Qt 为什么没有提供跨平台的 sleep 函数? 使用平台相关的 Sleep 或 nanosleep 以后,界面为什么没有反应? QThread 中提供了protected 权限的 sleep 函数,如何用到主线程中? 使用 QTest 中的 qSleep,在windows下如何隐藏控制台? 这些问题其实归结为一点:在主线程中使用这些函数是一种错误,这会直接导致界面无法刷新

QT里的事件循环点点滴滴

如何让程序等待一段时间QTime t;t.start();while(t.elapsed()<1000);这种死循环也是一种常见错误用法.但改成正确的还是比较简单的: QTime t;t.start();while(t.elapsed()<1000) QCoreApplication::processEvents(); 参考:http://dreamylights.blog.51cto.com/1163218/1538220 ----------------------------------