结构体类型的使用
在申请变量的时候,特定的场合总是会申请相同的多种变量,这些变量的排列顺序也是一样的结构,所以就有了结构体这种类型
极语言里自定义结构体就叫"类型",对于特别常用的结构类型会用套装标准的格式来定义这个结构,比如下面几种结构体:
类型 坐标类{整数 左,顶;}
一个坐标点或者一个几何形体的坐标位置,都需要左和顶两个整数值去定义这个位置
在代码里写书写坐标类 坐标;就会申请坐标.左和坐标.顶这两个整数变量
类型 尺寸类{整数 宽,高;}
一个方形或者近似方形的几何形状,都需要宽和高两个整数值去定义它的大小
在代码里写书写尺寸类 大小;就会申请大小.宽和大小.高这两个整数变量
类型 矩形类{整数 左,顶,宽,高;}
一个正方形或者长方形的窗口对象,都需要左和顶以及宽和高这四个整数值去定义它的大小和位置
在代码里写书写矩形类 矩形;就会申请矩形.左、矩形.顶、矩形.宽、矩形.高这四个整数变量
类型 快捷键类{整形 行为,键值,标识;}
一个快捷键或者键盘鼠标的动作信息,都需要用数值去描述和定义动作行为(SHIFT,CTRL,Alt等)
还需要一个数值去定义具体哪一个动作(鼠标左键,右键,中键,键盘具体哪个键等等)和加速器标识符
在代码里写书写快捷键类 快捷;就会申请快捷.行为,快捷.键值和快捷.标识这三个整形变量
类型 窗口类{整数 风格,消息,类长,实长,实例,图标,光标,背景,菜单,名称;}
窗口类是创建窗口程序需要使用的类,极语言的基础程序内置模块(GUI.inc)就有使用这个类
窗口类 程序(风格=$83,实例=$400000,背景=6)申请类型时可以在后面括号里给成员赋值
类型 窗口外观类{整数 参数,实例,菜单,父窗,高度,宽度,顶部,左边,风格,名称,类名,扩展}
窗口外观类可以通过发送消息函数来创建窗口控件,在窗口创建消息到来时也能收到这个结构体
类型只能是全局变量,在类型变量名后面加小括号设定初始值,不用按顺序指定,需要指定成员名。例如:
文件框类 文件框(长度=76,路长=64,名长=64);//要注意预置初始值时,整数只能用数字,文本只能用字符串。
赋值代码是在程序段之内书写,例如:
标题这个整数成员变量赋值的是"打开文件"这段文字的指针地址,它只能在编译程序时才能确定地址
还有一种情况:文件框.窗口=窗体;虽然都是整数变量,但是窗体是运行程序创建窗口之后才有具体地址
窗体虽然也是个整数变量,但是这个数值指向的地址里包含一系列窗口相关的数据信息,通常称之为对象
类型是用来连续申请多种变量,复杂的类型结构长度也是可变的
这种结构体的第一个变量通常都是长度,其成员结构也并不确定,使用组合标志来确定使用哪些成员
也有的不用长度而只用标志,指定包含哪些数据就去特定位置获取
对于复杂的结构只用指定部分成员数值时,可以使用小括号语法赋值,还有一种大括号初始化值的方法:
矩形类 矩形={10,20,800,600}这是给单个矩形指定左顶宽高四个值的写法
使用大括号初始化数值,必须给所有成员变量都指定数值,指定的数值跟成员变量的位置是对应的
矩形类 矩形[5]={
{10,20,800,600},
{30,50,600,500},
{40,60,700,400},
{50,30,900,700},
{20,10,300,200}
}这是给五个矩形类变量初始化值的写法,五组大括号里都包含有四个变量的数值
下面是坐标类,尺寸类,矩形类的详细介绍,更多结构体详见:常用结构体类型定义
中文名字 | 英文名称 | 长度 | 作用解释 |
坐标类 | POINT | 8 | 用来存储坐标位置的信息 |
坐标类 成员表 | |||
---|---|---|---|
中文 | 英文 | 类型 | 作用解释 |
左 | x | 整数 | 水平坐标位置。 |
顶 | y | 整数 | 垂直坐标位置。 |
中文名字 | 英文名称 | 长度 | 作用解释 |
尺寸类 | SIZE | 8 | 用来存储尺寸大小的信息 |
尺寸类 成员表 | |||
---|---|---|---|
中文 | 英文 | 类型 | 作用解释 |
宽 | cx | 整数 | 尺寸大小的宽度。 |
高 | cy | 整数 | 尺寸大小的高度。 |
中文名字 | 英文名称 | 长度 | 作用解释 |
矩形类 | RECT | 16 | 用来表示一个矩形框的四条边位置。 |
矩形类——成员表 | |||
---|---|---|---|
左 | left | 整数 | 指定矩形框左上角的x坐标 |
顶 | top | 整数 | 指定矩形框左上角的y坐标 |
宽 | right | 整数 | 指定矩形框右下角的x坐标 |
高 | bottom | 整数 | 指定矩形框右下角的y坐标 |