第11及12 讲 QT开发基础.pptVIP

  • 3
  • 0
  • 约2.67千字
  • 约 53页
  • 2017-12-23 发布于上海
  • 举报
第11及12 讲 QT开发基础

11 Qt/Qtopia开发基础 范旭龙 fanxulong@ 20 hours! One : One Qt 17 1、qt 基础 2、对话框与主窗口 3、实现应用程序功能与自定义窗口部件 4、布局管理 5、事件处理 6、QT的国际化 7、进程间的通信 8、其它 Qtopia 3 Qtopia核心技术 Qtopia上开发应用程序 1、什么是Qt? 2、Qt Basic 3、QTE简介 4、QTOPIA简介 Qt? 一个简单的例子 Qt是一个跨平台的C++ GUI toolkit,它提供给应用程序开发者建立艺术级的图形用户界面所需的所有功能。Qt是完全面向对象的,很容易扩展,且允许真正的组件编程。 自从1996年早些时候,Qt进入商业领域,它已经成为全世界范围内数千种成功的应用程序的基础。Qt也是流行的Linux桌面环境KDE的基础,KDE是所有主要的Linux发行版的一个标准组件。 Qt以“write once, compile anywhere”的方法支持多平台GUI应用程序开发。使用单一的source tree和简单的recompile,为一个平台编写的应用程序不需要修改就可以在别的平台上运行。 QT发布类型 QT版本 Qt支持下述平台: MS/Windows系列。 Unix/X11 – Linux系 Embedded -- Linux platforms with framebuffer support 1、什么是Qt? 2、Qt Basic 3、QTE简介 4、QTOPIA简介 2、1 Qt对象模型 一个简单的QT程序 1 #include qapplication.h 2 #include qlabel.h 3 int main(int argc, char *argv[]) 4 { 5 QApplication app (argc, argv); 6 QLabel *label = new QLabel(Hello Qt!, 0); 7 app.setActiveWindow (label); 8 label-resize(240, 320); 9 label-show(); 10 return app.exec(); 11 } 一个简单的QT程序 1 #include qapplication.h 2 #include qlabel.h 第一行和第二行包含了关于QApplication 和QLabel类的声明的头文件 一个简单的QT程序 5 QApplication app (argc, argv); 第五行创建了一个QApplication对象来管理程序资源。 QApplication类的构造函数要求传递两个参数 argc和 argv,因为QT支持部分的命令行参数。 一个简单的QT程序 QLabel *label = new QLabel(Hello Qt!, 0); 第六行创建了一个QLabel部件,用于显示 “Hello Qt!”. 在QT的术语中,一个部件就是用户界面的一个可见的元素。按钮,菜单,滚动条以及框架都是部件。部件还可以包含其它部件,例如,一个程序窗口是一个部件,它同时还包含一个菜单栏,一个工具栏,一个状态栏以及其它一些部件。 一个简单的QT程序 label-show(); 第9行使标签可见。部件创建时通常默认为隐藏,这样可以在显示它们以前对它们进行定制,这样可以避免闪烁。 一个简单的QT程序 return app.exec(); 第10行将控制权交给QT。这行代码执行后,程序进入了主事件循环,它等待用户行为的发生,如鼠标和键盘事件,然后进行响应。 一个简单的QT程序 qmake -project //创建一个与平台无关的工程文件。 qmake //从工程文件创建一个平台相关的Makefile make //建立程序 ./hello 运行程序 2.2 Qt信号与槽 再论 信号与槽 2.3 Qt元对象系统 元对象编译器moc(meta object compiler)对C++文件中的类声明进行分析并产生用于初始化元对象的C++代码,元对象包含全部信号和槽的名字以及指向这些函数的指针。 moc读C++源文件,如发现有Q_OBJECT宏声明的类,它就会生成另外一个C++源文件,这个新生成的文件中包含有该类的元对象代码。 元对象代码是signal/slot机制所必须的。用moc产生的C++源文件必须与类实现一起进行编译和连接,或者用#include语句将其包含

文档评论(0)

1亿VIP精品文档

相关文档