山东师范大学 研究生 C++高级程序设计 第9章-图形界面程序设计基础.pptVIP

  • 0
  • 0
  • 约7.14千字
  • 约 25页
  • 2026-02-02 发布于河北
  • 举报

山东师范大学 研究生 C++高级程序设计 第9章-图形界面程序设计基础.ppt

第9章图形界面程序设计基础本章主要内容:介绍Qt环境中两种开发图形界面应用程序的方法:命令行方法和集成环境开发方法把基本的C++知识与Qt所提供的功能组合起来创建简单的图形界面(GraphicalUserInterface,GUI)应用程序重要概念:信号和槽、布局对象是现实世界中具有属性、方法和事件的实体。C++程序将现实世界中的实体对象模型化,描述为包含了数据和代码的逻辑实体——对象,其中:数据描述对象状态的属性,是对象外观和状态等特征的说明。图形界面上的各种控件、窗口等都是对象。一个对象可以有多个属性,不同类别的对象一般情况下具有不同的属性。代码描述该对象可以执行的行为。是指对象能执行的操作,通过编制程序代码来具体实现,如Move方法、Print方法等。9.1.1C++中的对象9.1图形界面程序设计基础知识窗体上的对象事件指的是那些能够被对象识别的在程序执行时由系统自身或用户所引发的一些事件。第一是键盘和鼠标等输入设备;第二是屏幕上的可视对象,如程序的菜单、工具栏按钮和对话框控件(可以采用鼠标和键盘点击这些对象产生可视事件);第三是由操作系统本身产生,如窗口的放大与恢复等。事件图形界面程序是基于事件驱动(用户驱动)的系统如单击鼠标时会产生clicked事件、双击鼠标会产生doubleclicked事件。同样当用户按下键盘上一个键、改变窗口大小、用鼠标打开、关闭程序或者点击程序菜单都会产生事件,每个事件都可以对应一组程序代码,也就是事件过程。在程序执行时,用户针对某对象执行了某事件,就会触发该对象的相应事件,系统也就会执行程序员预先编好的程序代码,完成特定的运算或操作,实现特定的功能。程序员通过预先设定多个对象的多个事件,并建立起各个对象事件之间的逻辑关联,就可以完成较复杂的任务。事件机制是C++程序运行的最基本机制,即简单易行,也给用户操作计算机带来了方便。图形界面程序是基于事件驱动(用户驱动)的系统,它的程序靠响应用户的操作来驱动工作。窗体又称为对象窗口,主要用来设计应用程序的界面,窗体是C++程序的主体部分。它具有标题栏、最大化、最小化、还原等按钮,可被移动、改变大小及缩成图标。程序员可以在窗体中添加菜单、工具栏、状态栏、标签、文本编辑框、列表框、组合框、单选按钮、复选按钮、命令按钮、图像等控件,从而设计出一个友好的人机交互的应用程序界面。9.1.2QtC++中的窗体一个应用程序项目可以有多个窗体。每个窗体必须有一个唯一的窗体名字,创建某些项目时会自动创建项目的主窗体MainWindow。程序员可以通过窗体的属性窗口更改窗体的名字。可增加新的窗体。程序窗口中常见的单选、复选、命令等各种按钮、以及文本编辑框、列表框等被称为QtC++中的部件(或称为控件)。在QtC++开发环境下,部件箱里的图标对应的是一些常用的基本部件类,QtCreator提供可视化的面向对象编程,只需在QtCreator提供的编辑界面下通过鼠标的操作和简单的配置,无须输入所有的代码,就可以完成对象的创建和界面设计工作。9.1.3QtC++中的部件和部件类9.1.4QtC++中的属性(Properties)窗口当选定一个窗体或部件时,属性窗口会自动显示其属性列表。系统已经为所有的属性提供了默认值,程序员只需对其中一些重要的属性进行设置或修改,其他属性的值则可以保留。9.2.1Qt的信号和槽信号和槽是Qt特有的信息传输驱动机制,是Qt程序设计的重要基础。它可以让程序员在互不相干的对象之间建立联系。槽本质上是类的成员函数,其参数可以是任意类型。它和普通的C++成员函数几乎没有区别,它可以是虚函数;也可以被重载;可以是公有的、保护的或者私有的,也可以被其他C++成员函数直接调用。槽还可以和信号连接在一起,每当和槽连接的信号被发射的时候,就会自动调用这个槽。9.2.2Qt的信号和槽的语法形式connect()语句语法形式如下:connect(sender,SIGNAL(signal),receiver;SLOT(slot));这里的sender是发送信号的对象的指针,receive是包含槽的对象的指针,signal是被发送的信号,slot是接收信号的槽,它们都是不带参数的函数名。SIGNAL()宏和SLOT()宏会把它们的参数转换成相应的字符串。举例:QObject::connect(button,SIGNAL(clicked()),app,SLO

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档