首页 pml基础语法演示教学

pml基础语法演示教学

举报
开通vip

pml基础语法演示教学pml基础语法第一部分:基础知识PML基本概念ProgrammableMacroLanguage可编程宏语言.通常的PML开发包括两部分,一部分是PML宏,脚本语言;另一部分是PML2,面向对象的编程语言.1.PML宏(Macro)宏,就是一系列pml命令的集合.通过$m执行.格式为:$mfilename[paramlparam2….](举例)其中paraml为参数,宏可以参数化.(举例)2.面向对象的PML2PML支持对象(Object)对话框(Form)和菜单(Menu).(举例)一.变量,函数和方法1.变量的...

pml基础语法演示教学
pml基础语法第一部分:基础知识PML基本概念ProgrammableMacroLanguage可编程宏语言.通常的PML开发包括两部分,一部分是PML宏,脚本语言;另一部分是PML2,面向对象的编程语言.1.PML宏(Macro)宏,就是一系列pml命令的集合.通过$m执行.格式为:$mfilename[paramlparam2….](举例)其中paraml为参数,宏可以参数化.(举例)2.面向对象的PML2PML支持对象(Object)对话框(Form)和菜单(Menu).(举例)一.变量,函数和方法1.变量的定义及用法在PML2中,每一个变量都是对象.变量名以!或者!!开头,例如!weight.!开头的变量为局部变量,!!开头的为全局变量.PML内置了常用的变量类型.(1)Real实属类型.提供基本的四则运算操作.例如!a=10!b=10!a=!a!b$p$!a  --输出变量a的值(2)String字符串类型.例如!strName=‘/EQUI-TEST-1'(3)Boolean用于逻辑表达式.值只能是true/false(4)Array数组(5)Position(6)Direction3.变量的创建,删除,查看变量可以用赋值来创建.例如!str=‘abc'也可以用类型标识来创建.!str=string()!str=‘abc'删除:!str.delete()查看:通常使用qvar!str也可以用$p$!str4.方法(method)和函数(Function)Method是一个对象的子程序.只有当对象存在,才可以调用对象的方法.例如!strNum=‘123'!num=!strNum.Real()$p$!num以上的代码,调用的string类型的real()方法,将字符串转换为数字,并输出.函数的用法与方法类似,同样有参数和返回值.但函数是独立存在的,全局的.在任何地方,都可以调用..程序的结构控制1.循环语句(1)Do循环例如:!sum=0Do!iFrom1To100By1!sum=!sum!iEnddo其中!i为循环变量,初始值为1,终指为100,步长为1.当步长为1是,一般省略.(2)中断Break:中断并跳出最内层循环(3)跳过Skip.跳过当此存换.例如!sum=0Do!iFrom1To100By1Skipif(int(!i/2)eq(!i/2))$*跳过所有的偶数!sum=!sum!iEnddo2.逻辑控制语句格式为if()then…else…其中括号内的必须是表达式.例如:IF(TYPEOFOWNERE‘QBRAN')THEN$PBRANCH$!!CE.OWNER.NAMEELSEIF(TYPEE‘QBRAN')THEN$PBRANCH$!!CE.NAMEELSE$PNOTBRANCHENDIF其中elseif/else可选,elseif可多个.3.跳转语句定义标记Label/label1跳转Golabel/gol1不建议使用.3.其他相关语句1.数组字符串长度Length()类型转换Real(),Position(),Boolean()大小写转换LowCase(),UpCase()两端截取After(str2),Before(str2),Substring(index)中间截取Substring(index,nchars)替换Replace(str2,str3)匹配Match(str2)分割(返回数组)Split()修剪Trim()2.字符串元素数量Size()追加元素Append(value)追加数组AppendArray(Array)删除全部元素Clear()倒序Invert()搜索Find(value),FindFirst(value)和并重复项Unique()3.表达式(1)算术运算符-*/(2)连接运算符&(3)比较运算符LTGTEQNEQ(4)逻辑运算符ANDORNOT4.计算函数Sqrt(x)Power(x,e)Int(x)Sin(x)Cos(x)5.注释单行注释用一开头•-之前不可出现空格之外的字符单行注释$*.$*之后的内容为注释.$*之前可出现其他字符段落注释•用$(和$)将注释内容包括进来•(举例)6.打印$p打印内容例如$ptestline打印多行$pline1$Line2输出内容包括变量$pce.nameis$!!ce.name其中$为转义字符,如果要输出$,则使用$$7.异常处理程序运行中,可能需要意料之中的可能发生的异常  /错误,例如节点创建失败,遍历子节点时超过最后一个等等.这时需要捕捉异常,作出相应的处理.(1)异常捕捉例如Site/TEST_SITEHandle(2,109)$*$p节点不存在Endhandle其中(2,109)为错误编号.也可以使用handleany捕捉任意类型的错误.(2)捕捉多个异常Site/TEST_SITEHandle(2,109)$*$p节点不存在Elsehandle(2,108)$p/TEST_SITE节点存在,但不是SITE类型elsehandlenone$pSite/TEST_SITE节点存在endhandle其中handienone表示没有遇到错误的情况.4.用户自定义方法/用自定义函数/自定义对象(1)自定义方法Definemethod.方法名(参数1is类型,参数2is类型…)is返回值类型其中参数可没有返回值可以没有例如Definemethod.Sum(!aisreai,!bisreai)isreai!sum=!a!bReturn!numendmethod(2)自定义函数Definefunction!!sum(!aisreai,!bisreai)isreai!sum=!a!bReturn!numendFunction与方法类似.一个文件里只能定义一个函数  ,扩展名为pmifnc,必须放在指定的文件夹下,并执行pmirehashaii(3)自定义对象Defineobject对象名endobject5.文件处理(1)读取!file=objectFILE(d:\a‘bc123.txt')!lines=!file.ReadFile()Qvar!lines(2)写入!arr=array()!arr.append(‘line1')!arr.append(‘line1')!file=objectFILE('d:\abc.txt')!file.WriteFile('WRITE',!arr)$*将数组!arr写入文件其中'Write'可以换成'OVERWRITE^覆盖)和'APPEND'(追加)6.对话框及菜单1.系统对话框(1)询问!!alert!confirm=!!alert.confirm('确定要删除吗?')if(!confirmneq'YES')thenreturnendif(2)(3)警告!!alert.message(‘message')错误提示!!alert.error(‘error')2.自定义对话框SETUPFORM!!custumFormTITLE自'定义对话框'Text.text1‘点击按钮'Button.okExit这是一个最简单的对话框,显示一个文本框加上按钮,但是点击按钮不会有任何反应.(截图)3.对话框调用/初始化PmlhashallPmlreloadform!!custumFormShow!!custumForm4.默认构造方法/初始化方法每个form初始化时,会自动调用与其名字相同的方法.在刚才的代码中加上Definemethod.custumForm()!this.text1.tag=‘初始化完成'Endmethod除此以外,还可以加上默认的初始化函数在开头加上一行!this.initcall='!this.init()',调用构造方法结束  ,显示之前,会自动调用init()方法5.界面消息的响应界面消息的相应,例如点击按钮,选择下拉框等,用callback关联.SETUPFORM!!custumFormTITLE自'定义对话框'Text.text1‘点击按钮'Button.ok‘OK'ExitDefinemethod.custumForm()!this.text1.tag=‘初始化完成'!this.ok.callback=‘!this.ok()'EndmethodDefinemethod.ok()!!alert.message(‘OK')Endmethod此时,点击按钮,会弹出对话框.(截图)
本文档为【pml基础语法演示教学】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_477730
暂无简介~
格式:doc
大小:38KB
软件:Word
页数:15
分类:
上传时间:2022-08-09
浏览量:0