一、需要准备的软件:
1、qt-creator-windows-opensource-2.6.1.exe
2、qt-win-opensource-4.8.4-mingw.exe
3、MinGW(从从QCreator2.5开始,不在捆绑mingw了,需要用户自己下载)
二、因为是绿色版,不用安装,先将MinGW保存到D盘目录下,注意路径中不要出现中文或者空格。这样可能导致安装报错。例如我安装的路径是E:\MinGW 。
三、 先双击 qt-creator-windows-opensource-2.6.1.exe 安装Qt-creator,我安装在D:Qt目录下
四、再双击 qt-win-opensource-4.8.4-mingw.exe,选择目录D:Qt,安装过程中要求选择MinGW的路径,选择D:MinGW就可以
五、安装完有个配置的过程
1、打开Qt-creator,选择工具-选项-构建和运行(如果你的版本是英文版的,点击tools--options--build&run)
2-1、构建套件选项中选择手动设置里边的默认选项,编译器一栏选择MinGW(可以通过右边的管理选项来设置)
2-2、调试器使用你的MinGW目录下的bin目录下的gdb.exe调试器(可以通过右边的管理选项来设置)
3、选择Qt版本
选择手动设置,如图选择你的qmake路径
4、选择编译器选项
如图设置你的编译器路径。
5、接下来就可以新建一个项目试试了:
至此,整个Qt集成开发环境就算搭建好了。
六、还有些用户可能习惯控制台操作,这里就需要配置下环境变量了
PATH=D:\Qt\4.8.4\bin;%PATH%;D:\MinGW\bin
QTDIR=D:\Qt\4.8.4
QMAKESPEC=D:\Qt\4.8.4\mkspecs\win32-g++
弄完重启一下。
七、打开QT终端,检查一下是否成功 ,这里要检查三个命令:
在命令行下分别输入:
gcc -v 检查gcc的版本
qmake -v 检查qmake的版本
make -v 检查make的版本
表明一切设置成功,接下来你可以大显身手了。
八、给个例子:
这个例子在D盘test目录下创建了三个文件 clock.h clock.cpp main.cpp
//clock.h
#ifndef CLOCK_H
#define CLOCK_H
#ifndef ALARM_H
#define ALARM_H
#include<QApplication>
#include<QTimer>
#include<QLCDNumber>
#include<QLabel>
#include <QVariant>
#include<QTimeEdit>
#include<QPushButton>
#include<QDialog>
#include <QMessageBox>
#include<QSystemTrayIcon>
#include<QAction>
#include<QMenu>
class Clock:public QDialog
{
Q_OBJECT
public:
Clock(QWidget * parent=0);
void init();
void layout();
void clock_connect();//connect
void closeEvent(QCloseEvent *event);
public slots:
void clockChange();
void mini();
private:
QTimer * timer;
QLCDNumber * lcdNumber;//显示当前时间
QPushButton *button;
QSystemTrayIcon *trayIcon;
QAction * restoreAct;
QAction * quitAct;
QMenu * trayIconMenu;
//QRect rect;
};
#endif
#endif // CLOCK_H
//clock.cpp
#include"clock.h"
Clock::Clock(QWidget * parent):QDialog(parent)
{
init();
layout();
clock_connect();
}
void Clock::init()
{
setWindowTitle("Clock");//设置标题
setFixedSize(QSize(200,60));//固定大小
timer=new QTimer;//控制lcd的时间刷新
lcdNumber=new QLCDNumber;//显示当前时间
lcdNumber->setFixedSize(QSize(150,50));//固定大小
lcdNumber->setNumDigits(8);//显示八个数字,默认是显示5个数字
lcdNumber->display(QTime::currentTime().toString("hh:mm:ss"));//设置格式,还有其他形式的
button=new QPushButton("Quit");
trayIcon=new QSystemTrayIcon;
trayIcon->show();
trayIcon->setIcon(QIcon("./images/qme.ico"));
restoreAct=new QAction(QString::fromLocal8Bit("Show Clock"),this); //先定义然后在被trayIcon引用.....
quitAct=new QAction(QString::fromLocal8Bit("Quit"),this);
trayIconMenu=new QMenu;
trayIconMenu->addAction(restoreAct);
trayIconMenu->addAction(quitAct);
trayIcon->setContextMenu(trayIconMenu);
}
void Clock::layout()
{
lcdNumber->setParent(this);
lcdNumber->show();
button->setParent(this);
button->move(160,10);
button->resize(30,20);
button->show();
};
void Clock::clock_connect()
{
connect(timer,SIGNAL(timeout()),this,SLOT(clockChange()));
timer->start(1000);
connect(button,SIGNAL(clicked()),this,SLOT(mini()));
};
// **************
// 显示变化的时间
// **************
void Clock::clockChange()
{
lcdNumber->display(QTime::currentTime().toString("hh:mm:ss"));
}
void Clock::mini()
{
hide();
}
void Clock::closeEvent(QCloseEvent *event)
{
QMessageBox::information(0,"Quit","Are you sure exit the Application!");
}
//end
//main.cpp
#include"clock.h"
#include<QApplication>
int main(int argc,char *argv[])
{
QApplication app(argc,argv);
Clock clock;
clock.show();
return app.exec();
}
//end
操作:
在命令行下进入D盘test目录下:
qmake -project 会检查该目录下所有的.h文件和.cpp文件,并用他们创建一个工程test.pro
qmake 生成编译这个工程的Makefile文件
make 运行Makefile文件,并在当前目录下产生debug目录和release目录,debug目录下会产生可执行文件test.exe
进入debug目录,运行test.exe文件就看到效果了。
至此,完结,好爽。