天天看点

Qt Pro学习手记Qt Pro学习手记

Qt Pro学习手记

基本常识:

1、pro文件中,无任何标点符号;

2、当要引用变量值时,需要使用

$$变量名

或者

$${变量名}

;

3、需要添加几个连续的内容时,用空格连接即可

4、注释使用#

TRANSLATIONS

添加Qt Linguist转换生成出来的.ts翻译文件

使用示例:

TRANSLATIONS += language.ts

TARGET

最终生成的目标应用程序的名字。

使用示例:

譬如目标应用程序叫test。

TARGET = test

TEMPLATE

确定最终生成libraries还是application;

使用示例:

若最终生成EXE,则 TEMPLATE = app

若最终生成dll,则 TEMPLATE = lib

详细可见qmake使用手册

INCLUDEPATH

确定项目编译时,头文件可以查找的文件目录。

使用示例:

INCLUDEPATH += c:/test/include d:/other

include

将某个特定的pri文件包含到此pro文件中。

pri 文件可以理解为 pro 文件片段,可以使用include操作符将其引入一个 pro 文件。qmake 会自动处理引用操作,类似于将 pri 文件的全部内容复制到include语句处。这与 C++ 的#include指令类似。这里的处理是线性的,也就是 qmake 会从上向下进行解析。因此,如果你在 pri 中定义了一个函数,那么必须在include语句之后才能正常使用该函数。

使用示例:

include(children/children.pri)

DESTDIR

将最终生成的文件指定到某个特定文件夹中。

使用示例:

DESTDIR =$$PWD/…/bin

PWD

当前文件所在的绝对路径。

使用示例如上DESTDIR

跨平台–MAC 添加plist

QMAKE_INFO_PLIST = Info.plist
           

自定义变量

在pro中自定义变量,直接写变量名即可,不需要任何前缀,使用时,正常使用即可。

使用示例:

PLUGINPATH = d:/pluginpath

INCLUDEPATH += $$PLUGINPATH

其他

1、如何调试。关键词“message”

调试pro文件某变量,确定变量值。添加一行

message($$变量)

,然后保存,在Qt Creator 的General Message中即会输入该变量值;譬如,需要输出PLUGINPATH的值,在pro中添加一行

message(PLUGINPATH VALUE : $$PLUGINPATH)

2、将文件从某个文件夹拷贝到另一个文件夹

例如,将DESTDIR中的TARGET名为study.exe文件均拷贝到d盘test目录中,则

SRCFILE = $${DESTDIR}
SRCFILE ~= s,/,\\,g    #此处将“/”转换为“\”
DSTDIRECTORY = d:/test
DSTDIRECTORY ~= s,/,\\,g
QMAKE_POST_LINK +=$$quote(cmd /c copy /y $${SRCFILE } $${DSTDIRECTORY }$$escape_expand(\\n\\t))
           

3、判断windows是32位还是64位

contains(QT_ARCH, i386) {
    message("32-bit")
}else {
    message("64-bit")
}
           

4、判断操作系统,是windows还是Mac OS 等

macx: PLATFORM = "mac"
else: win32: PLATFORM = "windows"
else: linux-*: PLATFORM = "linux"
else: PLATFORM = "unknown"
           

文章目录

  • Qt Pro学习手记
    • TRANSLATIONS
    • TARGET
    • TEMPLATE
    • INCLUDEPATH
    • include
    • DESTDIR
    • PWD
    • 跨平台--MAC 添加plist
    • 自定义变量
    • 其他
      • 1、如何调试。关键词“message”
      • 2、将文件从某个文件夹拷贝到另一个文件夹
      • 3、判断windows是32位还是64位
      • 4、判断操作系统,是windows还是Mac OS 等

继续阅读