| 网站首页 | 文章中心 | 电子书下载 | 矢量图库 | 视频教程 | 素材下载 | 程序代码下载 | JS代码 | 论坛 | 
常用软件类:
|杀毒安全 |联络聊天 |网络软件 |多媒体类 |系统工具 |图形图像 |系统工具 |应用软件 |行业软件
开发设计类:
|动画制作 |图像处理 |3D设计 |操作系统 |站长学院 |网络相关 |WEB设计 |数据库类 |程序开发
一步一步跟我学易语言-第二十章:自定义数据类型
作者:未知    文章来源:网络    点击数:    更新时间:2006-8-18
 

 

    自定义数据类型分为支持库自定义数据类型(如:窗口、字体、编辑框等)和用户自定义数据类型。在程序中的任何位置,只要可以使用系统基本数据类型(如:整数型、文本型等),就可以使用自定义数据类型。

    所有的支持库自定义数据类型在支持库夹的“数据类型”分枝下可以找到,用户自定义数据类型由用户自行在自定义数据类型表中加入。

    下面我们一起来写一个有一点意思的程序,该程序执行后将允许你在画板上涂抹各种随机颜色的方块。请新建一个程序后进行以下输入:

    1、在_启动窗口上加入一个尽可能大的画板,将画板背景色属性改为白色,以便能够突出我们的显示;

    2、使用菜单功能“插入->新数据类型”加入一个用户自定义数据类型,将数据类型名修改为“坐标”,回车加入一个新成员,将成员名修改为“水平坐标”,类型改为整数型,再加入一个名为“垂直坐标”的整数型成员;

    3、再按下 Ctrl + N 加入一个新数据类型,将数据类型名修改为“矩形”,回车加入一个新成员,将成员名修改为“起始坐标”,类型改为坐标(输入文本:zb)再加入一个名为“结束坐标”的坐标数据类型成员;

    4、使用菜单功能“插入->新Dll命令”加入一个Dll命令(Dll命令将在下一章中讲述,本章中仅作了解),将其名称改为“俘获鼠标”(此名称可以随意取),在“本Dll命令在Dll库中的对应命令名”栏中输入“SetCapture”(此名称对应Windows系统的一个API函数名,不能修改),回车后加入一个参数,将参数名改为“窗口句柄”,类型改为整数型;

    5、再按下 Ctrl + N 加入一个新Dll命令,将其名称改为“释放鼠标”,在“本Dll命令在Dll库中的对应命令名”栏中输入“ReleaseCapture”;

    6、跳转到_启动窗口,选中画板1,在其属性表底部的组合框中分别选择“鼠标左键被按下”、“鼠标左键被放开”、“鼠标位置被移动”加入三个事件处理子程序;

    7、在窗口程序集1中加入一个名为绘画矩形,数据类型为矩形(输入文本:jx)的程序集容器和一个名为绘画已开始的逻辑型程序集容器;

    8、在_画板1_鼠标左键被按下子程序中输入:

        连续赋值 (横向位置, 绘画矩形.起始坐标.水平坐标, 绘画矩形.结束坐标.水平坐标)
            输入文本:lxfz(hxwz,hhjx.qszb.spzb,hhjx.jszb.spzb)
            另注:事件处理子程序的参数(如本子程序中的横向位置、纵向位置)的内容由系统自动提供。
       
连续赋值 (纵向位置, 绘画矩形.起始坐标.垂直坐标, 绘画矩形.结束坐标.垂直坐标)
    绘画已开始 = 真
        俘获鼠标 (画板1.取窗口句柄 ())
            输入文本:fhsb(hb1.qckjb())

    9、在_画板1_鼠标位置被移动子程序中输入:

        如果真 (绘画已开始)
            画板1.翻转矩形区 (绘画矩形.起始坐标.水平坐标, 绘画矩形.起始坐标.垂直坐标, 绘画矩形.结束坐标.水平坐标, 绘画矩形.结束坐标.垂直坐标)
            绘画矩形.结束坐标.水平坐标 = 横向位置
            绘画矩形.结束坐标.垂直坐标 = 纵向位置
            画板1.翻转矩形区 (绘画矩形.起始坐标.水平坐标, 绘画矩形.起始坐标.垂直坐标, 绘画矩形.结束坐标.水平坐标, 绘画矩形.结束坐标.垂直坐标)
        <如果真结束>

    10、在_画板1_鼠标左键被放开子程序中输入:

        如果真 (绘画已开始)
            置随机数种子 ()
            画板1.刷子颜色 = 取颜色值 (取随机数 (0, 255), 取随机数 (0, 255), 取随机数 (0, 255))
            画板1.刷子类型 = 取随机数 (0, 55)
            画板1.填充矩形 (绘画矩形.起始坐标.水平坐标, 绘画矩形.起始坐标.垂直坐标, 绘画矩形.结束坐标.水平坐标, 绘画矩形.结束坐标.垂直坐标)
            释放鼠标 ()
                输入文本:sfsb
           
绘画已开始 = 假
        <如果真结束>

    运行程序后,在画板上使用鼠标拖动,可以绘制出随机颜色和填充类型的矩形。

------------------------------------------

    最后,我们总结如下:

    1、用户可以在自定义数据类型表中定义自己所需要的数据类型;

    2、自定义数据类型由一系列成员组成,每个成员在程序中可以被单独访问,成员的数据类型可以是系统基本数据类型或者其它的自定义数据类型;

    3、引用自定义数据类型容器成员的格式为:

容器名称 + “.” + 成员名称

    如果欲引用成员内的成员,请使用连续的句点分隔。如上面的“绘画矩形.起始坐标.水平坐标”


相关文章