qt 编程经验总结文档格式.docx

上传人:b****2 文档编号:15166236 上传时间:2022-10-28 格式:DOCX 页数:15 大小:126.87KB
下载 相关 举报
qt 编程经验总结文档格式.docx_第1页
第1页 / 共15页
qt 编程经验总结文档格式.docx_第2页
第2页 / 共15页
qt 编程经验总结文档格式.docx_第3页
第3页 / 共15页
qt 编程经验总结文档格式.docx_第4页
第4页 / 共15页
qt 编程经验总结文档格式.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

qt 编程经验总结文档格式.docx

《qt 编程经验总结文档格式.docx》由会员分享,可在线阅读,更多相关《qt 编程经验总结文档格式.docx(15页珍藏版)》请在冰豆网上搜索。

qt 编程经验总结文档格式.docx

qmake是一个跨平台的程序,使用qmake来构建QT应用程序的步骤:

qmake-project:

收集项目信息,比如源文件、头文件、目标二进制文件、库位置等,生成一个跨平台的.pro项目文件(也可自己编写),这个文件用来生成Makefile文件

qmake(-makefile):

根据.pro文件生成Makefile文件。

接下来就可以运行make工具来编译项目了

.pro文件的格式:

TEMPLATE=app:

指定模板变量,表示生成的Makefile类型。

app(为默认值)建立应用程序的makefile;

lib建立库的makefile;

vcapp建立应用程序的VisualStudio项目文件;

vclib建立库的VisualStudio项目文件;

subdirs创建子目录编译方式的makefile

SUBDIRS=src1:

指定子目录

TARGET=filename:

指定生成的应用程序名(默认为项目名)

DEPENDPATH+=.:

指定程序编译时依赖的相关路径(+=表示追加,=则表示直接指定,下面类同)

INCLUDEPATH+=.:

指定头文件包含路径

DESTDIR+=bin:

指定应用程序放置的目录

UI_DIR+=form:

指定ui界面文件生成的头文件存放目录(ui文件会由uic命令处理并生成ui_*.h头文件)

RCC_DIR+=qrc:

指定qrc资源文件生成的头文件存放目录(rcc命令会将.qrc文件转换成qrc_*.h文件)

MOC_DIR+=moc:

指定moc生成的头文件存放目录(moc命令将含Q_OBJECT的头文件转换成标准.h文件)

OBJECTS_DIR+=obj:

指定目标文件存放的目录

CONFIG+=qtwarn_onrelease:

指定编译配置信息,如qt表示用QT库来编译,warn_on把编译器设为输出警告信息,release编译为发布程序,还有debug、debug_and_release等

message($$(PATH)):

用于qmake构建时产生消息。

$${a}表示读取变量a的字符串,$$(PATH)读取环境变量PATH

win32{}:

添加作用域,把语句放在作用域中,则在其他平台上运行时会忽略

exit():

测试一个文件是否存在

error():

停止运行qmake,并打印一条错误消息

HEADERS+=hello.h:

指定头文件

SOURCES+=filename.cpp:

指定源文件

FORMS+=form/filename.ui:

指定.ui界面设计文件

RESOURCES+=qrc/painter.qrc:

指定.qrc资源文件

数据模型更改时,QlistView如何相应的刷新

intSearchDevicePage:

:

addDeviceIpStrToQListViewWidget(char*ipaddr_string)

{

printf("

addDeviceIpStrToQListViewWidgetipaddr_string(%s)\n"

ipaddr_string);

return_val_if_failed(ipaddr_string!

=NULL,RET_INVALID_PARAMETER);

deviceIpStringList->

append(ipaddr_string);

deviceModel->

setStringList(*deviceIpStringList);

ui.listView_device->

setModel(deviceModel);

return0;

}

QlistView控件如何关联数据模型

QListView是基于Model,而QListWidget是基于Item。

这是它们的本质区别。

往QListView中添加条目需借助QAbstractListModel:

如:

MainWindow:

MainWindow(QWidget*parent):

QMainWindow(parent),

ui(newUi:

MainWindow)

ui->

setupUi(this);

QStringListModel*slm=newQStringListModel(this);

QStringList*sl=newQStringList();

sl->

append("

asdfsadfsa"

);

slm->

setStringList(*sl);

listView->

setModel(slm);

deletesl;

而在QListWidget中添加条目可以直接additem

QListWidgetlist;

list.setViewMode(QListWidget:

IconMode);

list.setResizeMode(QListWidget:

Adjust);

list.setMovement(QListWidget:

Static);

for(inti=0;

i<

100;

i++){

QListWidgetItem*item=newQListWidgetItem(&

list);

QStyle:

StandardPixmapsp=(QStyle:

StandardPixmap)(i%57);

item->

setData(Qt:

DecorationRole,qApp->

style()->

standardPixmap(sp).scaled(QSize(16,16),Qt:

KeepAspectRatio,Qt:

SmoothTransformation));

DisplayRole,QObject:

tr("

Item%1"

).arg(i));

}

QT中QstringList的清空

调用Clear()函数。

QT中的pro文件的编写

我们在编译QT的工程的时候,一般都会让qmake自动生成,但有时我们需要定制我们的工程,那么就必须改写pro文件。

要自己全部写pro文件又有点麻烦,所以,一般都是先运行

qmake-project

来生成基本的pro文件。

例如你有一个工程目录为backup,那么在这个目录下就会生成backup.pro文件。

对一般的工程,我们只需要修改几个基本的常用的选项,下面说说怎么修改。

假设我们有个目录,名字为backup。

下面有a.h,a.cpp,b.h,b.cpp,main.cpp等文件。

首先我们可以在backup目录下运行qmake-project生成backup.pro文件。

888888888888888888888888888888888888888888888888888888888888888888

第一种常用方式:

#模块设置,一般设置为app(生成应用程序,默认),subdirs(生成makefile文件编译subdirs指定的子文件夹),lib(生成库文件)

TEMPLATE=app

#指定生成的应用程序放置的目录

DESTDIR+=../bin

#指定生成的应用程序名

TARGET=pksystem

#添加或减少CONFIG的配置模块,一般采用默认即可,但是除去debug_and_release模块不会生成debug和release文件夹

#CONFIG+=release

CONFIG-=debug_and_release

#指定uic命令将.ui文件转化成ui_*.h文件的存放的目录

UI_DIR+=forms

#指定rcc命令将.qrc文件转换成qrc_*.h文件的存放目录

RCC_DIR+=../tmp

#指定moc命令将含Q_OBJECT的头文件转换成标准.h文件的存放目录

MOC_DIR+=../tmp

#指定目标文件的存放目录

OBJECTS_DIR+=../tmp

#程序编译时依赖的相关路径

DEPENDPATH+=.formsincludeqrcsources

#头文件包含路径

INCLUDEPATH+=.

#qmake时产生的信息,$${a}读取变量a的字符串,$$(PATH)读取环境变量PATH

#message($$(PATH))

#源文件编码方式

CODECFORSRC=GBK

#Input

#工程中包含的头文件

HEADERS+=include/painter.h

#工程中包含的.ui设计文件

FORMS+=forms/painter.ui

#工程中包含的源文件

SOURCES+=sources/main.cppsources/painter.cpp

#工程中包含的资源文件

RESOURCES+=qrc/painter.qrc

第二种常用方式,用于子文件夹的编译:

#设定模块为子文件夹编译方式

TEMPLATE=subdirs

#子文件夹目录,可用\换行

SUBDIRS=src1\

src2

在backup.pro里已经包含了几个基本的选项,如

TEMPLATE,TARGET,INCLUDEPATH,HEADS,SOURCES等选项。

下面说明一下几个经常修改的选项。

HEADS:

我们工程中头文件如下:

HEADS+=a.h\

b.h

SOURCES:

我们工程中的cpp文件,如下:

SOURCES+=a.cpp\

b.cpp\

main.cpp

上面的两个选项的文件分行是用反斜线\来分行,最后一个不用,如果是同一行的文件可以空格分开,我们在执行qmake-project的时候,qmake已经自动帮我们写上了,省去我们这些麻烦,不过以后要增加文件可以在这里增加。

INCL

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1