qt的安装目录:
QTDIR ------/opt/qt
qt的工具:
$QTDIR/bin
${QTDIR}/bin
assistant 帮助文档
designer 设计师 设计器 用来设计用户图形界面的工具
这个界面后缀是ui
moc 后台转换工具 可以转换信号 和槽 函数
qmake 可以把c++的代码文件 组织成pro文件
在pro文件的基础上 转换成makefile
make 把makefile 生成目标
qtconfig qt相关的配置
uic 可以把.ui件转换成.h文件
高度集成的开发工具-------qtcreator(IDE)
/opt/qt-creator-1.3.0
qt的头文件
$QTDIR/include
头文件分不同的模块
qtcore qtgui qtnetworke qtsql qtxml
符合c++的标准
把.h去掉前面加c 这些头文件必须c的标准头
这些头文件的名和类名完全相同
qt的库:
$QTDIR/lib
对不同模块头文件的实现
使用时 把libQt 和.以及后面的去掉
库默认加载 core 和gui
环境变量:
QTDIR qt的安装目录
PATH 工具指令相关的环境变量
QMAKESPEC 可以根据系统的编译器 来生成不同的makefile
QMAKESPEC=/opt/qt/mkspecs/win32-g++
1.编码 cpp文件
#include <QApplication>
#include <QLabel>
int main(int argc,char** argv){
QApplication app(argc,argv);
QLabel lab("hello qt");
lab.show();
return app.exec();
}
2.使用qmake -project 生成pro项目描述文件
3.使用qmake 把pro 文件转换成makefile
4.make 生成目标程序(有错忽略)
5.执行程序
#include <QApplication>
#include <QLabel>
int main(int argc,char** argv){
QApplication app(argc,argv);
QLabel lab("hello qt");
lab.show();
return app.exec();
}
没个类都有对应的头文件 对应的库中有想应的实现
QApplication是管理qt的应用程序
QLabel 标签类 显示组件 默认是矩形
组件默认不可见 需要调用相应函数
exec 让程序进入事件循环 不然窗口立即退出
qt ----3
sql ----3 3.5
plsql---2
proc ---2
dms ---4
30 31
帮助文档的显示问题:
qtconfig
双击----Fonts-----family-->luxiserif
guoaj@tarena.com.cn
代码中的乱码问题:
标签 hello qt
你好 qt
1.QTextCodec 编码类
帮助文档:
继承关系
公用的类型
公开的函数 属性
静态函数和属性
保护的函数------供子类使用
槽函函数 public slots
信号函数 signals
2.用这个编码类 的静态函数 得到一个编码对象
静态函数可以不创建对象直接调用
这里要一个编码对象 -----单例模式
QTextCodec *coder=
QTextCodec::codecForName("gbk");
3.通过这个类的静态函数去设置编码对象
QTextCodec::setCodecForTr(coder);
4.使用QObject类的静态tr函数 编码对应的字符串
QLabel(QObject::tr("你好 qt","gbk"));
函数调用:
void a(){
b();
}
函数指针
void c();
void b();
void (*pa)();
qsort();
void a(void (*pa)()){
pa();
}
pa=b;
a(pa);
pb=c;
a(pa);
这两个函数如果不用函数指针
a函数和b c函数 就有直接的耦合关系
如果使用函数指针a和b c没有直接的耦合
高内聚 低耦合
c++ 的多态
一个类 的调用怎么影响另一个类
A.a();希望能影响到B类的a
A* oa=new B();
oa.a();
c++的多态是可选
B是A的子类
如果a方法是virtual 的会调用B的a函数
如果a方法不是virtual 的会调用A的a函数
QT 中我希望调用一个类的函数时 调用到另一个类的函数
信号 和槽 解决把两个毫无关系的对象关联起来
查询QPushButton的文档找到相应的signal 函数
clicked()
我们希望 点击按钮影响QLabel对象
查询QLabel的槽函数
hide()
close()
QObject
查询一个静态函数 可以关联两个对象
QObject::connect(*sender,const char*,*reciver,const char *);
如果参数是一级指针 定义的变量是一个普通对象 取地址即可
如果参数是二级指针 定义变量是一个一级指针 取地址即可
....
QObject::connect(btn,SIGNAL(clicked()),&lab,SLOT(hide()));
如果一个组建没有父窗体 这个组件就是一个独立的组件
QWidget qwid;
QPushButton("quit",&qwid);
点击quit按钮 界面退出?
用滑块 和微调框 改变值
QSlider
QSpinBox
如果连接的信号和槽函数中有参数
连接时要指明参数类型
QTDIR ------/opt/qt
qt的工具:
$QTDIR/bin
${QTDIR}/bin
assistant 帮助文档
designer 设计师 设计器 用来设计用户图形界面的工具
这个界面后缀是ui
moc 后台转换工具 可以转换信号 和槽 函数
qmake 可以把c++的代码文件 组织成pro文件
在pro文件的基础上 转换成makefile
make 把makefile 生成目标
qtconfig qt相关的配置
uic 可以把.ui件转换成.h文件
高度集成的开发工具-------qtcreator(IDE)
/opt/qt-creator-1.3.0
qt的头文件
$QTDIR/include
头文件分不同的模块
qtcore qtgui qtnetworke qtsql qtxml
符合c++的标准
把.h去掉前面加c 这些头文件必须c的标准头
这些头文件的名和类名完全相同
qt的库:
$QTDIR/lib
对不同模块头文件的实现
使用时 把libQt 和.以及后面的去掉
库默认加载 core 和gui
环境变量:
QTDIR qt的安装目录
PATH 工具指令相关的环境变量
QMAKESPEC 可以根据系统的编译器 来生成不同的makefile
QMAKESPEC=/opt/qt/mkspecs/win32-g++
1.编码 cpp文件
#include <QApplication>
#include <QLabel>
int main(int argc,char** argv){
QApplication app(argc,argv);
QLabel lab("hello qt");
lab.show();
return app.exec();
}
2.使用qmake -project 生成pro项目描述文件
3.使用qmake 把pro 文件转换成makefile
4.make 生成目标程序(有错忽略)
5.执行程序
#include <QApplication>
#include <QLabel>
int main(int argc,char** argv){
QApplication app(argc,argv);
QLabel lab("hello qt");
lab.show();
return app.exec();
}
没个类都有对应的头文件 对应的库中有想应的实现
QApplication是管理qt的应用程序
QLabel 标签类 显示组件 默认是矩形
组件默认不可见 需要调用相应函数
exec 让程序进入事件循环 不然窗口立即退出
qt ----3
sql ----3 3.5
plsql---2
proc ---2
dms ---4
30 31
帮助文档的显示问题:
qtconfig
双击----Fonts-----family-->luxiserif
guoaj@tarena.com.cn
代码中的乱码问题:
标签 hello qt
你好 qt
1.QTextCodec 编码类
帮助文档:
继承关系
公用的类型
公开的函数 属性
静态函数和属性
保护的函数------供子类使用
槽函函数 public slots
信号函数 signals
2.用这个编码类 的静态函数 得到一个编码对象
静态函数可以不创建对象直接调用
这里要一个编码对象 -----单例模式
QTextCodec *coder=
QTextCodec::codecForName("gbk");
3.通过这个类的静态函数去设置编码对象
QTextCodec::setCodecForTr(coder);
4.使用QObject类的静态tr函数 编码对应的字符串
QLabel(QObject::tr("你好 qt","gbk"));
函数调用:
void a(){
b();
}
函数指针
void c();
void b();
void (*pa)();
qsort();
void a(void (*pa)()){
pa();
}
pa=b;
a(pa);
pb=c;
a(pa);
这两个函数如果不用函数指针
a函数和b c函数 就有直接的耦合关系
如果使用函数指针a和b c没有直接的耦合
高内聚 低耦合
c++ 的多态
一个类 的调用怎么影响另一个类
A.a();希望能影响到B类的a
A* oa=new B();
oa.a();
c++的多态是可选
B是A的子类
如果a方法是virtual 的会调用B的a函数
如果a方法不是virtual 的会调用A的a函数
QT 中我希望调用一个类的函数时 调用到另一个类的函数
信号 和槽 解决把两个毫无关系的对象关联起来
查询QPushButton的文档找到相应的signal 函数
clicked()
我们希望 点击按钮影响QLabel对象
查询QLabel的槽函数
hide()
close()
QObject
查询一个静态函数 可以关联两个对象
QObject::connect(*sender,const char*,*reciver,const char *);
如果参数是一级指针 定义的变量是一个普通对象 取地址即可
如果参数是二级指针 定义变量是一个一级指针 取地址即可
....
QObject::connect(btn,SIGNAL(clicked()),&lab,SLOT(hide()));
如果一个组建没有父窗体 这个组件就是一个独立的组件
QWidget qwid;
QPushButton("quit",&qwid);
点击quit按钮 界面退出?
用滑块 和微调框 改变值
QSlider
QSpinBox
如果连接的信号和槽函数中有参数
连接时要指明参数类型
SLOT(abc(QString))