首页 > 代码库 > QT_编程基础

QT_编程基础

简单介绍

       Qt是一个由奇趣科技开发的跨平台C++图形用户界面应用程序开发框架。它既能够开发GUI程式,也可用于开发非GUI程式,比方控制台工具和server。

       Qt是面向对象语言,易于扩展,而且同意组件编程。Qt是一个著名的C++库,使用Qt,在一定程度上让你获得的是一个“一站式”的服务。

  Qt 的良好封装机制使得 Qt 的模块化程度很高,可重用性较好,对于用户开发来说是很方便的。 Qt 提供了一种称为 signals/slots 的安全类型来替代 callback,这使得各个元件之间的协同工作变得十分简单。Qt包含多达250个以上的C++类,还提供基于模板的 collections, serialization, file, I/O device, directory management, date/time 类。甚至还包含正則表達式的处理功能。


QT的安装,Linux系统与window系统不同,详细度娘,能够參考:

http://hi.baidu.com/vnaacoxiqsbvwxq/item/95c73c93656dbedc7a7f010f

http://blog.csdn.net/cuman/article/details/4174456

要注意配置好相关环境变量等。


第一个QT程序

在Red Hat Linux下进行測试:

#include <QApplication>
#include <QWidget>

int main(int argc, char **argv)
{
	QApplication app(argc, argv);

	QWidget win;
	win.resize(400, 300);//设置窗口大小
	win.setVisible(true);//显示窗口

	return app.exec();
}

上面的程序比較简单,显示一个窗口。

编译方式:

在源文件路径的终端中输入:

qmake -project

qmake xxx.pro

make

当然,也能够自己定义pro文件,然后直接运行qmake就可以生成Makefile文件,然后运行make就可以生成目标程序。



在窗口中添加几个控件:

#include <QApplication>
#include <QWidget>
#include <QLineEdit>
#include <QCheckBox>
#include <QLCDNumber>

int main(int argc, char **argv)
{
	QApplication app(argc, argv);
	QWidget win;
	win.resize(400, 300);

	QLineEdit edt(&win);//一个单行文本框
	edt.setText("Hello");//文本的显示内容
	edt.move(150, 75);//设置位置
	edt.resize(80, 30);//设置大小

	QCheckBox chk(&win);//一个复选框
	chk.move(150, 50);
	chk.setText("First");

	QLCDNumber num(&win);//一个数字显示框
	num.move(150, 20);
	num.display(1000);

	win.setVisible(true);

	return app.exec();
}


自己定义*.pro文件

TEMPLATE= app——表示应用程序;lib——库
SOURCES= cpp文件 cpp文件 cpp文件(空格分隔)  如SOURCES=main.cpp
= \续行符号
+=
HEADERS= 头文件
CONFIG=影响gcc的选项 
release | debug
warn_on | warn_off -Wall -w
qt | opengl
shared|static 
QT= 该变量在CONFIG=qt才有意义
core
gui
network
opengl
xml
sql
TARGET=输出文件名称(-o输出文件)
LIBS=用户指定库
:-l -L
FORMS=指定i文件


本例中写好后保存为xxx.pro  运行qmake  然后make就可以。

(:执行qmake显示没有此命令,说明qt没有安装或配置好,假设已经安装,能够直接去安装文件夹中找,仅仅是比較麻烦,本例中能够不执行qmake而执行/usr/lib/qt4/bin/qmake)