《易语言简易图解教程_第6章.pdf》由会员分享,可在线阅读,更多相关《易语言简易图解教程_第6章.pdf(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、116在实际编程过程中,经常用变量交换临时的数据或资源,前面已经了解了变量的概念,这一章来学习静态变量、变量数组及动态管理变量。合理的运用变量在编程过程中,能简化或优化程序代码运行的效率。全局变量、程序集变量或局部变量,建立时默认为非静态变量,只有在子程序里局部变量才有“静态”属性设置。第第第第 6 6 6 6 章章章章 深入学习变量深入学习变量深入学习变量深入学习变量本章学习内容本章学习内容:6.1认识静态变量6.5动态管理数组变量6.2静态变量的应用6.6定时提醒小程序练习6.3变量的命令操作6.7课后练习6.4变量数组的定义1176.16.16.16.1认识静态变量认识静态变量认识静态变
2、量认识静态变量在子程序里面建立两个变量。分别命名为“静态变量”和“非静态变量”,用鼠标在静态变量的“静态”属性栏里点击,出现“”符号,这样,静态变量就具有了静态属性。“静态”属性 栏 里 没 有“”符号,说明该变量为非静态变量。1 1 1 1静态变量与动态变量的区别:静态变量与动态变量的区别:非静态变量在其所在子程序开始被执行前自动分配存储空间并初始化,在所在子程序执行完毕后自动释放所分配的存储空间,也就是说,变量的存储空间仅在其所在子程序执行过程中存在;而静态变量则保留现行内容以供下次继续使用。2 2 2 2全局变量和程序集变量具有全局变量和程序集变量具有“静态静态”属性吗?属性吗?虽然在全
3、局变量和程序集变量里没有设置“静态”选项,但是全局变量一旦赋值,变量数据就占据了指定的存储空间,并在程序运行期间永久存在仅在应用程序启动运行前被初始化一次,只有程序结束,存储空间才被释放。程序集也是一样,在程序集里面,程序集变量一旦赋值,只有程序集退出时,存储空间才被释放。1186.26.26.26.2静态变量应用静态变量应用静态变量应用静态变量应用双击按钮进入程序设计界面,在“_按钮 1_被单击”子程序里面建立两个整数型变量,分别命名为“静态变量”和“非静态变量”,在静态变量的“静态”属性栏里用鼠标点击,出现“”符号,使其具有“静态”属性。下面跟着实例来演示静态变量的应用。新建一个易语言程序
4、,加入一个画板和一个按钮组件,更改画板的“边框”属性为“凹入式”,“画板背景色”属性为白色。119顺序输入以下程序代码。画板 1.滚动写行(“静态变量:”到文本(静态变量)画板 1.滚动写行(“非静态变量:”到文本(非静态变量)静态变量 静态变量 1非静态变量 非静态变量 1按“F5 键”运行程序,连续单击 3次按钮。两个变量的值在画板中输出如下结果。001020从结果可以看出,整数型静态变量和非静态变量的初始化值都是 0,子程序结束后非静态变量的数据清空,而静态变量的数据依旧保留。1206.36.36.36.3 变量的命令操作变量的命令操作变量的命令操作变量的命令操作变量建立好并指定了数据类
5、型后,如果不进行赋值操作,变量会默认初始化数值。在系统核心支持库里面有变量两个操作命令。输入“赋值”命令按下光标键,代码行会变为“=”,在易语言里面赋值操作的符号是“=”,后者数据赋予前者。可以直接输入变量名加“=”加变量值。如:变量 1100变量 2“易语言”1216.46.46.46.4变量数组的定义变量数组的定义变量数组的定义变量数组的定义请打开上一章所完成的程序,将“_ _ _ _按钮按钮 1_1_1_1_被单击被单击”子程序中的内容全部删除,然后进行以下输入操作:加入一个名为“单维变量”的整数型变量,在其数组属性中输入“3”,表明此变量为一个单维数组,共有 3个成员。加入一个名为“多
6、维变量”的整数型变量,在其数组属性中输入“2,2”,表明此变量为一个二维数组,共有 4(2 2 的结果)个成员。加入文本型变量 3,输入“连续赋值()”命令,第一个参数是用作赋于的值或资源,第二个参数是被赋值的变量或变量数组,可以被重复添加。连续赋值(“全中文全可视易语言”,变量 2,变量 3)运行程序后,变量 2和变量3的值都等于“全中文全可视易语言”。这里不可以用连续赋值命令给“变量 1”和“变量 2”赋值,因为它们是不同类型的变量。122顺序输入下列语句行:单维变量 1 100多维变量 2 1 到文本(200)画板 1.滚动写行(“单维变量 1:”到文本(单维变量 1),“多维变量 2
7、1:”多维变量 2 1)画板 1.滚动写行(“多维变量 3:”多维变量 3)多维变量 4 到文本(300)画板 1.滚动写行(“多维变量 2 2:”多维变量 2 2)按“F5 键”运行程序,连续单击按钮。在画板得出如下结果。100200200300通过上面的程序可以知道:数组变量可以有多个成员变量,每个成员变量等同于一个单独变量。各成员变量的引用方法为:数组变量名+“”+从 1 开始的成员位置+“”+.譬如上面的单维变量,它有“单维变量 1”、“单维变量 2”、“单维变量 3”3 个成员。多维变量有“多维变量 1 1”、“多维变量 1 2”、“多维变量2 1”、“多维变量2 2”四个成员。12
8、3变量名初始值运行后的值单维变量 10100单维变量 200单维变量 300多维变量 1 100多维变量 1 200多维变量 2 10200多维变量 2 20300该 表 是将 经过 上述运算后,各变量 成员 变更后的数值。多维变量的成员也可以使用单维的方式来引用。例如上面的“多维变量 3”等同于“多维变量 2 1”,“多维变量4”等同于“多维变量 2 2”。此方法可用来遍历数组的所有成员。请继续输入进行以下操作:(1)加入一个名称为变量 1 的整数型变量。(2)添加以下程序代码。.计次循环首(取数组成员数(多维变量),变量 1)画板 1.滚动写行(多维变量变量 1).计次循环尾()124从运
9、行结果可以看出,此段程序可以顺序显示出多维变量中所有成员的内容。其中前 4 行是第一次的运行结果,后 4 行是刚才输入新程序后的运行结果,再试一试将上面添加的程序段中的多维变量改为单维变量。.计次循环首(取数组成员数(单维变量),变量 1)画板 1.滚动写行(“单维变量”“”到文本(变量 1)“:”到文本(单维变量 变量 1).计次循环尾()运行后查看结果。1256.56.56.56.5 动态管理数组变量动态管理数组变量动态管理数组变量动态管理数组变量前面已说过了数组变量的每个成员可以当成单个变量应用,但是每个成员的数据类型必须相同。如果数组变量是整数型,里面对应的每个成员也必须是整数型,否则
10、变量赋值时会提示错误。下面将继续讲述如何动态管理数组变量,它是易语言的高级特性之一。在系统核心支持库下有一组数组操作命令,我们通过一个简单的例子来了解它们。在窗体上创建一个按钮组件。把其宽度拉长,更改窗口标题为“动态显示文字”。126分别建立文本变量 1 和整数型变量 2,在变量 1 的数组属性里输入 0,请继续输入进行代码:重定义数组(变量 1,假,7)把变量 1 的成员数重定义为 7变量 1 “中”,“文”,“编”,“程”,“易”,“语”,“言”赋值给变量 1 每个成员对应的文本按钮 1.标题 “”清除按钮 1 的标题文字.计次循环首(取数组成员数(变量 1),变量 2)循环次数为变量 1
11、 的成员数按钮 1.标题 按钮 1.标题 到文本(变量 1 变量 2)取变量 1 每个成员文字给按钮 1 的标题延时(300)每次取变量 1 成员内容间隔的时间.计次循环尾()按“F5 键”运行程序,点击“按钮 1”,按钮的标题会动态显示“中-文-编-程-易-语-言”。127下面删除代码段:重定义数组(变量 1,假,7)再运行程序,发现结果一样,所以得出结论:变量 1 “中”,“文”,“编”,“程”,“易”,“语”,“言”这种赋值给变量 1 的操作,可以重新改变变量成员数目,并清除原先所有数据。原来成员数为 0 个成员,执行后改为 7 个成员。再清除循环的一组代码,添加一个新的文本型变量 3,
12、数组成员为 0,继续输入:变量 3 变量 1信息框(取数组成员数(变量 3),0,)运行后,弹出信息框,得出变量 2 的成员数“7”,也就是说明:变量 3变量 1这行代码把变量 1 的成员数及其内容同时赋给变量 3,等同于:“复制数组()”命令:复制数组(变量 1,变量 3)。1286.66.66.66.6定时提醒小程序练习定时提醒小程序练习定时提醒小程序练习定时提醒小程序练习把信息框代码行置为草稿,接着输入以下代码:重定义数组(变量 2,真,3,4)把单维变量 2 重定义为二维变量信息框(取数组下标(变量 2,1),0,)得出变量 2 第一维的成员数信息框(取数组下标(变量 2,2),0,)
13、得出变量 2 第二维的成员数运行 后得出 变量 3 第一维的成员数为 3;第二维的成员数为 4。变量数组是编程中临时存储多个数据的“小仓库”,其类型可以是整数、文本、字节集等等,在实际编程中会常常读成员内容时,遇到超出下标的错误,好多出现在循环代码中,需注意!129下面就来练习本节的定时提醒小程序。在新建的易程序窗口上添加如图所示的组件,调整位置大小并更改标题内容。选中时钟组件,在属性面板上更改“时钟周期”为 1000,单位是毫秒,1 秒=1000 毫秒,目的是每 1 秒都执行对应的周期事件。双击标题为“加入提示”的按钮,进入代码编写窗口。新建“提示内容”、“提示时间”两个文本型和“变量 1”
14、整数型程序集变量,并设置“提示时间”变量的数组属性为 0 个成员。130在“_按钮 1_被单击”子程序下输入:提示内容 编辑框 1.内容提示时间 分割文本(编辑框 2.内容,“:”,)上面的命令代码是取现在时间的小时部分和分钟部分与指定提示的时间判断,相同则执行信息框提示。变量 1 的目的是控制一分钟只提示一次,当然你也可以让程序提示两次或多次。只需更改“如果真(变量 1 10 0)”代码,等于每间隔 10 秒 提示一次。切换到时钟 1 属性面板,点击独有的周期事件,进入“_时钟 1_周期事件”子程序代码编写窗口,也可以直接用双击时钟 1 组件进入“_时钟 1_周期事件”子程序代码编写窗口。输
15、入以下代码:131按“F5 键”运行程序,立刻会弹出错误信息,问题在哪里呢?原来“提示时间”数组变量的成员默认是 0,判断提示时间1当然出错了。先把时钟 1 的时钟周期设为 0,再“_按钮 1.被单击”子程序中添加代码,判断分割后的提示时间数组的成员数,如果等于 2,就分配时钟 1 的时钟周期为1000,不等于 2 还设为 0。如果(取数组成员数(提示时间)2)时钟 1.时钟周期 1000时钟 1.时钟周期 0动态赋予时钟1的时钟周期可以很好的节约系统资源。时钟周期事件是经常用到的即时判断条件的事件,但一直会占用系统资源,不需要时时钟周期最好设为 0。132按“F5 键”运行程序,在提示文本后
16、面的编辑框中输入一段文字,“我爱易语言!”,输入提示时间,格式为“小时:分钟”,因为程序是分割“:”到提示时间数组,点击“加入提示”按纽,程序到指定时间会谈出提示的内容。上面提示程序的原理就是输入时间数字,以“:”分割出小时和分钟与实际时间判断,相符则执行提示信息。如果输入带“:”符号的数字是分解不成功的。可以在_按钮 1_被单击子程序里加入如下代码:如果真(取数组成员数(提示时间)2)提示时间 分割文本(编辑框 2.内容,“:”,)1336.6.6.6.7 7 7 7 课后练习课后练习课后练习课后练习(1)说一说静态变量与动态变量的区别,并利用时钟组件制作一个秒表记次程序。134(2)练习把单维数组变量的内容改为多维数组变量,并保留变量内以前的数据。(3)根据定时提醒小程序的原理,练习制作一个定时关机程序。135136