1、 1 目 录 摘要. 1 关键字 . 1 1 功能说明 1 2 开发环境 1 2.1 Qt 简介 1 2.2 Qt 安装 1 2.3 Qt 开发基础 . 1 2.3.1 Qt 对象与对象树 1 2.3.2 信号与槽 . 1 2.3.3 事件 3 3 系统设计 3 3.1 需求分析 3 3.2 框架设计 3 3.2.1 俄罗斯方块基本规则 3 3.2.2 系统模块 . 4 3.3 系统实现 4 4 系统测试 5 5 课程设计总结 . 6 6 附录 . 6 6.1 参考资料 6 6.2 程序源码 6 1 摘要 Qt 是一个跨平台的 C+图形用户界面应用程序框架。本程序利用 Qt 提供的相关类,实
2、现了俄罗斯方块的基本功能。 关键字 QT、嵌入式、软件开发 1 功能说明 支持俄罗斯方块游戏的基本功能 支持虚拟按键 2 开发环境 操作系统:ubuntu 10.04 LTS 开发工具:gnu 编译工具链(gcc 等)、Qt Creator、Qt 4.6.2 2.1 Qt 简介 Qt 是跨平台的应用程序和 UI 框架。它包括跨平台类库、集成开发工具和跨平台 IDE。 使用 Qt,只需一次性开发应用程序,无须重新编写源代码,便可跨不同桌面和嵌入式操作 系统部署这些应用程序。 2.2 Qt 安装 1.Qt 官网(http:/)上有完整的 SDK 下载,下载开发平台的 SDK,下载完成后 点击即可安
3、装 2.如果是使用 Linux 系统,也可能通过命令行进行安装,以 ubuntu 10.04 LTS 为例: sudo apt-get install qt4-dev-tools qtcreator qt4-doc qt4-qtconfig qt-demos 3.如果希望构建嵌入式 Qt 开发平台,则需要参考相关开发板的说明,一般是先制作交叉编 译工具链、再交叉编译一个用于目标板的 Qt 库,这里不再详述 2.3 Qt 开发基础 2.3.1 Qt 对象与对象树 QObject 是所有 Qt 类的基类。QObject 组织成为对象树。当你创建 QObject 时,将另 外的对象作为其父对象, 这
4、个对象就被加入其父对象的 children() 列表, 并且当父对象销毁 时,这个对象也能够被销毁。事实证明,这种实现方法非常适合 GUI 对象。例如,一个 QShortcut(键盘快捷键)对象是相关窗口的子对象,所以当用户关闭窗口时,这个对象也 能够被删除。 QWidget 作为所有能够显示在屏幕上的组件的父类,扩展了这种父子关系。一个子对 象通常也成为一个子组件,就是说,它被显示在父组件的坐标系统中,受到父组件的边界影 响可能会有剪切等等。例如,当应用程序销毁掉已关闭的消息对话框时,对话框上面的按钮 和标签一起被销毁,就像我们希望的那样,因为这些按钮和标签都是对话框的子对象。 2.3.2 信号与槽 在 GUI 编程中,当我们改变了一个组件,我们经常需要通知另外的一个组件。更一般 2 地,我们希望任何类型的对象都能够与另外的对象通讯。例如,如果用户点击了关闭按钮, 我们希望窗口的 close() 函数被调用。 早期工具库对这种通讯使用回调实现。 回调是一个指向一个函数的指针, 所以如果你希 望某种事件发生的时候,处理函数获得通知,你就需要将指向另