linux集成开发环境的使用

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。


在窗口上添加textlabel标签和pushbutton 按钮。


修改标签和按钮的属性; 为关闭按钮添加事件,选择菜单 edit->connections ,点击new,在新增项 中,Sender选择pushbutton1,signal选择 clicked,receiver选择form1,slot选择close()。
提供的模板

Gnome

普通:包含菜单、工具条、状态栏的应用程序; Qt SDI:基于Qt的SDI窗口程序; QT MDI:基于Qt的MDI窗口程序; Qext MDI:创建基于Qt和Qext的MDI窗口程序 ; c:c语言终端程序; c++:c++语言终端程序;(本例中选择C++) 只有一个模板,创建一个空的项目,其它所有模板都无法使 用时,可以使用这个模板创建空项目。
//customwnd.cpp
#include "customwnd.h" #include <qpushbutton.h> CustomWnd::CustomWnd(QWidget *parent, const char *name) :QWidget(parent, name) { m_pushBtnMsg = new QPushButton("MessageButton", this); m_pushBtnMsg.show(); connect(m_pushBtnMsg, SIGNAL(clicked()), this, SLOT(btnMessage())); //将自定义槽连接到内部信号, 这里就跟 消息映射函数相似. connect(this, SIGNAL(sigTest(QString)), this, SLOT(slotTest(QString))); //将自定义槽连接到自定义信号 }
槽和信号的使用
Βιβλιοθήκη Baidu
方式一:使用预定义的槽和信号 方式二:用户自定义槽和信号 在编写QT程序时,经常自定义槽,但不经常 自定义信号,因为预定义好的信号已经基本够 用了。
元对象编译器(Meta Object Compile MOC)



C++编译器不能理解自定义槽和信号的语句,MOC扫 描源文件中用于自定义槽和信号的语句,并将它生成 C++编译器能够识别的代码。 当在类声明中定义好槽和信号后,需要用MOC来读 取文件,生成有效的C++代码。 如:$moc infile.h –o outfile.moc 将.moc文件和.cpp文件一起编译链接 g++ -c outfile.moc –o outfile.o g++ -c infile.cpp –o infile.o g++ -lqt outfile.o infile.o –o myprogram
CustomWnd::~CustomWnd() { delete m_pushBtnMsg; }
主界面

功能简介



主窗口:综合了所有视图和功能 菜单:以菜单形式将所有功能组织起来 工具条:提供快速定位功能的方式 树状视图:



类视图:以类为节点 组视图:以组为节点 文件视图:以文件、文件夹为节点 书视图:以帮助文档为节点

输出视图:


消息 标准输出
主界面

标准错误输出 Konsole 断点 编辑源文件的主要视图,在没有创建源文件时,视图为 不可用状态。 键盘状态 编辑状态 当前行列编号
点击file->new,点击C++ Source File,点击确定,输入相应的代码。
#include <qapplication.h>
#include <qpushbutton.h> Int main(int argc, char **argv) { QApplication a(argc, argv);
public slots: //自定义槽, void btnMessage(); void slotTest(QString); signals: //自定义信号, void sigTest(QString str); //自 定义信号. private: QPushButton *m_pushBtnMsg; };

编辑视图


状态条



创建项目

功能菜单

【项目/新建】 项目:

程序所有资源的总称;

源文件 资源文件(图标,光标等) 数据文件 其它相关文件

一个项目对应一个目录

KDevelop提供了一系列项目模板,简化项目的创 建过程。
创建项目

选择项目模板(本例中选择【终端程序/C++】) Gnome程序
编译,运行

第一步:在命令行使用qmake命令产生Makefile文件: $ qmake unnamed.pro 第二步:使用make命令进行编译: $ make 第三步:运行。 $ ./unnamed


将上面的例子换一种方式实现


点击file->new,新建一个项目并保存。 点击菜单file->new,新建一个窗口,选择 Dialog。
class CustomWnd:public QWidget { Q_OBJECT //如果要自定义槽和消息,必须 在这里调用这个宏,否则自定义的槽和消息 将不会起作用 public: CustomWnd(QWidget *parent = 0, const char *name = NULL); ~CustomWnd();

点击创建按钮创建项目框架
项目框架

main函数 KDevelop自动创建了一个包括main主函数的 项目框架 main函数源码
项目框架

项目框架提供的功能 编译项目


【建立/配置】 【建立/连编】 【建立/执行】 在终端窗口打印一条字符串

功能:

QT 程序设计基础

QT简介 举例 槽和信号
MOC
元数据编译器,用于构造用户自己的信号和槽。


槽是标准的成员函数,但他们增加了一些特殊 的功能,使他们能够连接到信号,每当槽所连 接的信号被发射时,槽(函数)就被执行。
信号

是一种特殊类型的成员函数,他们被定义为当 某个事件发生时就发射,之后执行所有连接的 槽(函数),执行的顺序是任意的。
创建用户槽
Class MyMainWindow:public QWidget 具有用户自定义 { Q_OBJECT 槽的类必须使用 这个宏。 public: MyMainWindow(); public slots: 槽的标志 MyExitSlot(); }

创建用户槽和信号(举例)
//customwnd.h #ifndef __CUSTOM_WINDOW_H__ #define __CUSTOM_WINDOW_H__ #include <qapplication.h> #include <qwidget.h> #include <qmessagebox.h> #include <qpopupmenu.h>

Qt对不同平台的专门API进行了 专门的封装(文件处理,网络等)

Trolltech的双重授权模式 Trolltech公司提供两种授权模式,一种用于商 业性质的授权,一种用于免费的开源授权
例:

运行QTDesigner,点击file->new,新建一个 项目,这里选择C++ project.
提示项目的保存路径:
Qt程序 终端程序 其它程序
Kde程序
提供的模板

KDE程序

KDE mini模板:只有一个主窗口元素(Widget)的应 用程序; KDE Normal模板:支持文档-视图模型的、有菜单、 工具条、状态条的应用程序; KDE MDI:支持文档-视图模型的MDI窗口; KDE KControl Module:KDE控制中心模块; Konqueror 插件:创建Konqueror网页浏览器插件; KDE Kicker Applet:创建可以放在KDE工具面板上的 小程序; KDE Kio Slave:创建Kio Slave,Kio Slave是KDE下所 有协议的基础; KDE Desktop Theme:利用c++创建KDE本地桌面外观 主题;

点击file->new,选择C++ mainfile(main.cpp)
QT自动生成如下代码:

生成Makefile文件,编译并运行(方法和前面相同)
槽(slot)和信号(signal)
槽和信号术语: 术语 用户事件 程序事件 发射信号 内部状态 解释 指用户所产生的事件,如:点击鼠标或拖动滚动条。 指程序所产生的事件,如:当用户点击鼠标后程序 退出。 发出一个“信号”,如:当点击鼠标时,发送 clicked()信号。 对象内部数据已发生改变,对象发射一个信号。
linux集成开发环境的使用
内容
KDevelop集成开发环境的使用
QT程序设计基础
主要内容



KDevelop简介 KDevelop的界面布局 KDevelop提供的模板

模板种类 模板参数 基本框架 创建项目 编辑项目 运行程序

利用KDevelop创建程序

KDevelop简介
QT简介

Qt是Trolltech公司的标志性产品,是一个跨平 台的C++图形用户界面(GUI)工具包。 Qt 应用程序接口与工具兼容于所有支持平台, 让开发员们掌握一个应用程序接口,便可执行 与平台非相关的应用开发与配置。

Qt/Windows (Windows XP, 2000, NT 4, Me/98) Qt/Mac (Mac OS X) Qt/X11 (Linux, Solaris, HP-UX, IRIX, AIX等)
KDevelop的使用

环境配置

第一次启动KDevelop会自动启动配置程序; 通过【主菜单/编程/更多编程工具/KDevelop Setup】重新运 行配置向导 ; 配置向导: 通常可以选择 向导的默认选项
KDevelop的使用

主窗口 菜单
KDevelop主界面
工具栏 标签树状视图 标签输出视图 文档编辑视图 状态条
KDevelop简介

依赖的软件


KDE2.2.2或KDE 3.0.X,www.kde.org g++ >2.8,gcc.gun.org GNU make,www.gnu.org perl 5.004,www.perl.com autoconf 2.13,www.gnu.org automake 1.4,www.gnu.org flex 2.5.4,www.gnu.org



名称由来 KDE Develop Environment 的缩写 维护 由KDevelop项目管理维护 许可制度 GPL 特点 应用项目模板辅助创建基本的程序框架,简化新项目的创建; 类向导、signal/slot向导等手段辅助代码的生成; 代码编辑器功能丰富,可以实现语法着色、参数补全、格式化代 码等功能; 提供项目的多种视图,可以方便的实现文件、函数、类的迅速定 位; 自动调用编译、链接、配置等开发工具,实现对各种工具的集成 使用; 支持多种语言、多种应用的开发
包含了QApplication类的定义,必须包 含
包含了QPushButton类的定义 Argc:命令行变量的数量;argv:命令 行变量的数组。 在窗口部件使用之前创建qapplication的 对象。
QPushButton hellobtn(“Hello 创建一个按钮。 World!”,0); hellobtn.resize(100,20); a.setMainWidget(&hellobtn); hellobtn.show(); return a.exec(); } 重新设置hellobtn的大小。 设置按钮为主窗口部件。 将按钮设置为可见。 将控制权交给QT。

Qt


终端程序



其它:

模板参数设置
必需参数

[终端程序/C++]模板参数设置
项目名称 本例中将项目 名称设为 Guess
其它模板参数设置

vcs版本控制参数设置(取默认值)
其它模板参数设置

.h文件模板(取默认值)
其它模板参数设置

.cpp文件模板(取默认值)
创建项目框架
相关文档
最新文档