当前位置: 代码迷 >> PB >> PB函数大全(三)
  详细解决方案

PB函数大全(三)

热度:105   发布时间:2016-04-29 08:08:40.0
PB函数大全(3)

GetFocus()
功能确定当前焦点位于哪个控件上
语法GetFocus ( )
返回值GraphicObject。函数执行成功时返回当前得到焦点控件的引用,发生错误时返回无效引用。用法应用程序利用IsValid()函数可以检测GetFocus()是否返回有效的控件引用。同时,使用TypeOf()函数可以确定控件的类型。
Post()
功能将指定消息加入到某个窗口的消息队列中,这个窗口既可以是PowerBuilder应用的窗口,也可以是其它应用的窗口
语法Post( handle, messageno, word, long )
参数handle:long类型,指定窗口的系统句柄,将向该窗口邮寄消息messageno:UnsignedInteger类型,指定要邮寄的消息号 word:long类型,指定与消息一起邮寄的word类参数值。如果messageno参数指定的消息不使用该参数,那么将这个参数的值设置为0long:long类型或string,指定与消息一起邮寄的long型参数值或字符串返回值Boolean。如果任何参数的值为NULL,Post()函数返回NULL。
用法Post()函数用于向窗口发送非PowerBuilder预定义事件的消息,这个窗口可以是PowerBuilder应用的窗口,也可以是其它应用的窗口。Post()函数把发送的消息放置在指定窗口消息队列的尾部,然后返回到应用程序中,它并不等待相应事件事件处理程序的执行。这一点与Send()函数不同,Send()函数直接触发指定窗口相应的事件,执行事件处理程序后返回到调用应用中。因此,我们说Post()函数采用的是异步方式,Send()函数采用的是同步方式。Post()函数的参数handle指定接收消息的窗口句柄,对PowerBuilder窗口来说,使用Handle()函数可以得到该句柄。对其它应用程序的窗口来说,可以调用系统API函数查找窗口并得到相应窗口的句柄。如果应用程序要邮寄PowerBuilder定义事件(包括预定义事件和用户定义事件),那么使用PostEvent()函数既简单有方便。当应用程序在long参数位置指定一个字符串时,Post()函数复制一个该字符串的副本,然后将副本的地址传送给指定窗口。
ProfileInt()
功能从初始化文件(.ini)中读取整型设置值
语法ProfileInt ( filename, section, key, default )
参数filename:string类型,指定初始化文件的名称,可以包括路径,省略路径时,该函数按操作系统的标准路径搜索指定文件section:string类型,指定要得到的值所在的节(Section)key:string类型,指定要得到的值的名称,不用区分大小写default:integer类型,当指定的文件、节名、项目名不存在或不能转换为整数时,函数返回该参数指定的值返回值Integer。函数执行成功时,在指定的文件、节名、项目名不存在任何错误的情况下,函数返回相应项的值;如果指定的文件、节名、项目名不存在或不能转换为整数时,函数返回default参数指定的缺省值。如果发生错误,函数返回-1。如果任何参数的值为NULL,ProfileInt()函数返回NULL。
ProfileString()
功能从初始化文件(.ini)中读取字符串型设置值
语法ProfileString ( filename, section, key, default )
参数filename:string类型,指定初始化文件的名称,可以包括路径,省略路径时,该函数按操作系统的标准路径搜索指定文件section:string类型,指定要得到的值所在的节(Section)key:string类型,指定要得到的值的名称,不用区分大小写default:string类型,当指定的文件、节名、项目名不存在时,函数返回该参数指定的值返回值String。函数执行成功时,在指定的文件、节名、项目名不存在任何错误的情况下,函数返回相应项的值;如果指定的文件、节名、项目名不存在,函数返回default参数指定的缺省值。如果发生错误,函数返回空字符串。如果任何参数的值为NULL,ProfileString()函数返回NULL。
Restart()
功能停止所有程序段的执行、关闭所有窗口、提交事务、断开与数据库的连接,然后重新启动应用程序
语法Restart()
返回值Integer。函数执行成功时返回1,发生错误时返回-1。
Run()
功能运行指定的应用程序
语法Run ( string {, windowstate } )
参数string:string类型,指定要运行的应用程序的名称,其中可以包括路径以及相应的参数,就像在命令行中键入的那样windowstate:WindowState枚举类型,可选项,指定程序运行时的窗口状态。有效取值为:Maximized! - 最大化窗口;Minimized! - 最小化窗口;Normal! - 缺省值,正常窗口返回值Integer。函数执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,Run()函数返回NULL。
用法使用Run()函数,应用程序能够启动操作系统中的任何程序。当在Run()参数中指定了要启动应用程序的参数时,参数的意义、格式、个数等由具体的应用程序确定。如果在Run()函数的string参数中指定了文件名但没有给出扩展名时,PowerBuilder认为该文件的扩展名为.EXE。要运行扩展名不是.EXE的应用程序(比如.BAT, .COM, 或.PIF),必须在Run()函数的参数中指定文件的扩展名。
Send()
功能向窗口发送指定的消息并立即执行相应的事件处理程序
语法Send( handle, messageno, word, long )
参数handle:long类型,指定窗口的系统句柄,将向该窗口发送消息messageno:UnsignedInteger类型,指定要发送的消息号word:long类型,指定与消息一起发送的word类参数值。如果messageno参数指定的消息不使用该参数,那么将这个参数的值设置为0long:long类型或string,指定与消息一起发送的long型参数值或字符串返回值Long。函数执行成功时返回Windows系统调用SendMessage()的返回值,发生错误时返回-1。如果任何参数的值为NULL,Send()函数返回NULL。
用法Send()函数用于向窗口发送非PowerBuilder预定义事件的消息,这个窗口可以是PowerBuilder应用的窗口,也可以是其它应用的窗口。Send()函数直接触发指定窗口相应的事件,执行事件处理程序后返回到调用应用中,这一点与Post()函数不同,Post()函数把发送的消息放置在指定窗口消息队列的尾部,然后返回到应用程序中,它并不等待相应事件事件处理程序的执行。因此,我们说Post()函数采用的是异步方式,Send()函数采用的是同步方式。Send()函数的参数handle指定接收消息的窗口句柄,对PowerBuilder窗口来说,使用Handle()函数可以得到该句柄。对其它应用程序的窗口来说,可以调用系统API函数查找窗口并得到相应窗口的句柄。实际上,Send()函数把它的各个参数直接传送给Windows的系统调用SendMessage()。在各种C++开发工具的WINDOWS.H文件中可以查到各消息编号。如果应用程序要发送PowerBuilder定义事件(包括预定义事件和用户定义事件),那么使用TriggerEvent()函数既简单有方便。当应用程序在long参数位置指定一个字符串时,Send()函数复制一个该字符串的副本,然后将副本的地址传送给指定窗口。
SetProfileString()
功能设置初始化文件中指定项的值
语法SetProfileString ( filename, section, key, value )
参数filename:string类型,指定初始化文件的名称,可以包括路径,省略路径时,该函数按操作系统的标准路径搜索指定文件section:string类型,指定要设置的值所在的节(Section)key:string类型,指定要设置的值的名称,不用区分大小写default:string类型,指定要设置项的值返回值Integer。函数执行成功时返回1,指定的文件未找到或指定的文件不能访问时函数返回-1。如果任何参数的值为NULL,SetProfileString()函数返回NULL。
ShowHelp()
功能显示应用程序帮助,该帮助使用Microsoft Windows帮助系统进行操作
语法ShowHelp ( helpfile, helpcommand {, typeid } )
参数helpfile:string类型,指定帮助文件的名称helpcommand:HelpCommand枚举类型,指定显示帮助的格式。有效取值为:Index! - 显示目录主题,使用该值时不要指定typeid参数;Keyword! - 转移到由指定关键字确定的主题;Topic! - 显示指定主题的帮助typeid:可选项,指定帮助主题返回值Integer。函数执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,ShowHelp()函数返回NULL。
SignalError()
功能触发应用对象的SystemError事件,通常用于代码调试
语法SignalError ( { number }, { text } )
参数number:integer类型,可选项,其值将保存到Error对象的number属性中text:string类型,可选项,其值将保存到Error对象的text属性中返回值Integer。函数执行成功时返回1,发生错误时返回-1。
Yield()
功能将控制权转移给其它图形对象,包括非PowerBuilder对象。该函数检测消息队列,如果有消息,就把消息取出。利用该函数可以在执行耗时较长的操作时把控制权转让给其它应用
语法Yield()
返回值Boolean。如果在消息队列中提取到了消息,那么函数返回TRUE,否则返回FALSE。用法正常情况下,PowerBuilder应用程序在执行一段代码(比如函数或事件处理程序)的过程中不响应用户的操作。对耗时短暂的代码段来说,这种处理方式没有什么不妥的地方,但是,如果某个代码段的执行耗时较长,应用程序又希望为用户提供更多的控制权,那么需要在这段代码中插入Yield()函数,让用户能够进行其它操作,特别在循环执行的代码中更应该如此。应用程序执行Yield()函数后,如果发现消息队列中存在消息,它将允许对象处理这些消息,处理之后,继续Yield()函数后面代码的执行。因此,代码中插入Yield()函数将降低应用程序的运行效率。
Close()
功能关闭窗口并释放窗口以及窗口上的控件所占据的内存
语法Close(windowname)
参数windowname:要关闭窗口的名称返回值Integer。函数执行成功时返回1,发生错误时返回-1。如果参数windowname的值为NULL,Close()函数返回NULL。
用法应用程序使用Open()或其它Open簇函数打开窗口后,不需要窗口时,可以使用Close()关闭窗口并释放窗口以及窗口上所有控件占据的内存。Close()函数的执行过程为:如果要关闭窗口的CloseQuery和/或Close事件已经编写了事件处理程序,那么执行这些事件处理程序,从屏幕上删除要关闭的窗口、关闭窗口、之后执行调用Close()函数语句后面的语句。当窗口被关闭后,应用程序就不能再访问已经关闭窗口的属性、实例变量、对象函数、以及窗口上的控件了。如果关闭窗口后应用程序依然访问上述特性,那么将引发运行错误。当然,应用程序也可以阻止窗口被关闭,方法很简单,只要在欲阻止关闭窗口的CloseQuery事件处理程序中使用RETURN语句返回1即可,格式为:RETURN1
CloseWithReturn()
功能关闭窗口并将返回值保存在Message对象中,该函数只能对响应窗口使用
语法CloseWithReturn ( windowname, returnvalue)
参数windowname:要关闭窗口的名称returnvalue:指定关闭窗口时保存到Message对象中的值,调用CloseWithReturn()函数的代码段通过查看Message对象属性的值得到关闭窗口时被关闭窗口传递的值。returnvalue参数必须是下述三种类型之一:String、Numeric、PowerObject返回值Integer。函数执行成功时返回1,发生错误时返回-1。如果参数任何的值为NULL,CloseWithReturn()函数返回NULL。
Open()
功能 打开窗口。该函数有两种语法格式:
语法一、打开编程时已知数据类型的窗口对象;
语法二、打开程序运行后才能确定数据类型的窗口对象。下面分别予以介绍:
语法一、打开编程时已知数据类型的窗口对象
语法Open ( windowvar {, parent } )
参数windowvar:要打开窗口的窗口名,可以使用窗口画笔定义的窗口对象名,也可以使用该窗口对象的某个变量。Open()函数把打开窗口的引用放置到windowvar变量中parent:可选项,指定要打开窗口的父窗口,要打开窗口成为父窗口的子窗口,只有当要打开窗口需要成为某个窗口的子窗口时才需要指定该参数。如果应用程序使用Open()函数打开某个子窗口或弹出窗口而又省略了该参数,那么当前活动窗口成为被打开窗口的父窗口返回值Integer。函数执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,Open()函数返回NULL。
语法二、打开程序运行后才能确定数据类型的窗口对象
语法Open ( windowvar, windowtype {, parent } )
参数windowvar:指定窗口变量名,Open()函数把打开窗口的引用放置到该变量中windowtype:string类型,指定要打开窗口的数据类型,该参数指定的窗口数据类型必须与windowvar参数的类型相同或是windowvar类型的后继对象parent:可选项,指定要打开窗口的父窗口,要打开窗口成为父窗口的子窗口,只有当要打开窗口需要成为某个窗口的子窗口时才需要指定该参数。如果应用程序使用Open()函数打开某个子窗口或弹出窗口而又省略了该参数,那么当前活动窗口成为被打开窗口的父窗口返回值Integer。函数执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,Open()函数返回NULL。
OpenSheet()
功能在MDI框架窗口中打开MDI子窗口,并在指定菜单中创建选择该子窗口的菜单项
语法OpenSheet(sheetrefvar{,windowtype},mdiframe{,position{,arrangeopen}})
参数sheetrefvar:指定要作为工作表打开的窗口名windowtype:string类型,可选项,指定要打开窗口的类型(也就是窗口画笔中保存的窗口对象名)mdiframe:指定要放置工作表的MDI框架窗口名position:可选参数,指定所打开的工作表的名称作为一个菜单项显示在第几个菜单标题下面,缺省时,被放在倒数第二个菜单标题下,原因是,大多数商业软件的最后两个菜单标题是Window和Help,把工作表的名称放到Window菜单标题中用于选择工作表窗口是个合情合理的选择arrangeopen:ArrangeOpen枚举类型,可选参数,但如果选用了此参数,那么position参数也必须同时指定。arrangeopen参数告诉系统如何显示打开的工作表返回值Integer。函数执行成功时返回1,发生错误时返回-1。如果参数任何的值为NULL,OpenSheet()函数返回NULL。
用法arrangeopen参数的可能取值为:Cascaded!把一个工作表放在另一个的上面,每个都向右下方偏移一点,这样所有工作表的标题栏用户都能看到。该值是OpenSheet()函数的缺省选择。Layered!将工作表显示在客户区的左上角,并最大化工作表,使其充满MDI框架窗口的整个客户区。Original!操作动作与Cascaded!参数相同,只是不放大窗口,而以窗口定义时的大小显示。
OpenSheetWithParm()
功能 在MDI框架窗口中打开MDI子窗口,同时把参数保存在Message对象中进行传递
语法OpenSheetWithParm(sheetrefvar,parameter{,windowtype},mdiframe{,position{,arrangeopen}}
参数sheetrefvar:指定要作为工作表打开的窗口名parameter:指定要传递给打开工作表的数据,该数据保存在Message对象的属性中, parameter参数的数据类型必须是下述三种类型之一:String、Numeric、PowerObjectwindowtype:string类型,可选项,指定是要打开窗口的类型(也就是窗口画笔中保存的窗口对象名)mdiframe:指定要放置工作表的MDI框架窗口名position:可选参数,指定所打开的工作表的名称作为一个菜单项显示在第几个菜单标题下面,缺省时,被放在倒数第二个菜单标题下,原因是,大多数商业软件的最后两个菜单标题是Window和Help,把工作表的名称放到Window菜单标题中用于选择工作表窗口是个合情合理的选择arrangeopen:ArrangeOpen枚举类型,可选参数,但如果选用了此参数,那么position参数也必须同时指定。arrangeopen参数告诉系统如何显示打开的工作表返回值Integer。函数执行成功时返回1,发生错误时返回-1。如果参数任何的值为NULL,OpenSheet()函数返回NULL。
用法arrangeopen参数的可能取值为:Cascaded!把一个工作表放在另一个的上面,每个都向右下方偏移一点,这样所有工作表的标题栏用户都能看到。该值是OpenSheet()函数的缺省选择。Layered!将工作表显示在客户区的左上角,并最大化工作表,使其充满MDI框架窗口的整个客户区。Original!操作动作与Cascaded!参数相同,只是不放大窗口,而以窗口定义时的大小显示。
OpenWithParm()
功能带参数打开窗口,与打开窗口的Open()函数相似,OpenWithParm()有两种语法格式:
语法一、带参数打开编程时已知数据类型的窗口对象;
语法二、带参数打开程序运行后才能确定数据类型的窗口对象。下面分别予以介绍:
语法一、带参数打开编程时已知数据类型的窗口对象
语法OpenWithParm(windowvar,parameter{,parent})
参数windowvar:要打开窗口的窗口名,可以使用窗口画笔定义的窗口对象名,也可以使用该窗口对象的某个变量。Open()函数把打开窗口的引用放置到windowvar变量中parameter:指定要传递给打开窗口的数据,该数据保存在Message对象的属性中,parameter参数的数据类型必须是下述三种类型之一:String、Numeric、PowerObjectparent:可选项,指定要打开窗口的父窗口,要打开窗口成为父窗口的子窗口,只有当要打开窗口需要成为某个窗口的子窗口时才需要指定该参数。如果应用程序使用Open()函数打开某个子窗口或弹出窗口而又省略了该参数,那么当前活动窗口成为被打开窗口的父窗口返回值Integer。函数执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,OpenWithParm()函数返回NULL。
用法消息对象Message有三个属性用于存储OpenWithParm()函数传递给打开窗口的数据。根据parameter参数数据类型的不同,该参数的值保存在Message对象的不同属性中。
语法二、带参数打开程序运行后才能确定数据类型的窗口对象
语法OpenWithParm(windowvar,parameter,windowtype{,parent})
参数windowvar:指定窗口变量名,Open()函数把打开窗口的引用放置到该变量中parameter:指定要传递给打开窗口的数据,该数据保存在Message对象的属性中,parameter参数的数据类型必须是下述三种类型之一:String、Numeric、PowerObjectwindowtype:string类型,指定要打开窗口的数据类型,该参数指定的窗口数据类型必须与windowvar参数的类型相同或是windowvar类型的后继对象parent:可选项,指定要打开窗口的父窗口,要打开窗口成为父窗口的子窗口,只有当要打开窗口需要成为某个窗口的子窗口时才需要指定该参数。如果应用程序使用Open()函数打开某个子窗口或弹出窗口而又省略了该参数,那么当前活动窗口成为被打开窗口的父窗口返回值Integer。函数执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,OpenWithParm()函数返回NULL。
CloseChannel()
功能关闭先前用OpenChannel()函数打开的DDE服务器的通道
语法CloseChannel ( handle {, windowhandle } )
参数handle:long类型,通道句柄,指明要关闭的DDE通道windowhandle:long类型,可选项,指明用做DDE客户的PowerBuilder窗口的窗口句柄返回值Integer。函数执行成功时返回1,发生错误时返回下述值之一:-2通道不能被关闭-3不能确认服务器-9Handle参数的值为NULL

  相关解决方案