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。函数执行成功时,在指定的文件、节名、项目名不存在任何错误的情况下,函数返回相应项的值;如果指定的文件、节名、项目名不存在,tb函数返回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
ExecRemote()
功能请求DDE服务器应用程序执行命令。该函数有两种语法格式:语法一、直接向DDE服务器应用发送一条命令(冷连接方式);语法二、应用程序打开某个通道后向DDE服务器应用发送命令(热连接方式)。下面分别予以介绍。
语法一、直接向DDE服务器应用发送一条命令(冷连接方式);
语法ExecRemote ( command, applname, topicname )
参数command:string类型,其值为希望DDE服务器应用执行的命令,命令格式和语法需要参看DDE服务器应用的文档applname:string类型,指定服务器应用的DDE名称topicname:string类型,指定命令中要使用的DDE应用的数据或实例返回值Integer。函数执行成功时返回1,发生错误时返回下述值之一:-1未启动连接-2请求被拒绝-3不能终止服务器如果任何参数的值为NULL,ExecRemote()函数返回NULL。
语法二、应用程序打开某个通道后向DDE服务器应用发送命令(热连接方式)
语法ExecRemote ( command, handle {, windowhandle } )
参数command:string类型,其值为希望DDE服务器应用执行的命令,命令格式和语法需要参看DDE服务器应用的文档handle:long类型,指定使用的DDE通道句柄windowhandle:long类型,可选项,指明用做DDE客户的PowerBuilder窗口的窗口句柄。省略该参数时,当前应用中的活动窗口用做DDE客户返回值Integer。函数执行成功时返回1,发生错误时返回下述值之一:-1未启动连接-2请求被拒绝-9handle参数的值为NULL
GetDataDDE()
功能从热连接服务器应用中获取数据,并将其保存到指定的字符串变量中。
语法GetDataDDE ( string )
参数string:string类型变量,用于保存接收到的数据返回值Integer。函数执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,GetDataDDE()函数返回NULL。
GetDataDDEOrigin()
功能确定来自热连接DDE服务器应用的数据源,成功时将应用的DDE标识保存在参数指定的变量中。
语法GetDataDDEOrigin ( applstring, topicstring, itemstring )
参数applstring:string类型变量,用于保存服务器应用的名称topicstring:string类型变量,用于保存主题(比如,在Excel中,主题可以是REGION.XLS)itemstring:string类型变量,用于保存数据项标识(比如,在Excel中,数据项标识可以是R1C2)返回值Integer。函数执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,GetDataDDEOrigin()函数返回NULL。
GetRemote()
功能请求服务器应用传送数据,该函数有两种格式:语法一、请求DDE服务器应用提供数据并将数据保存在变量中,该格式不要求事先打开通道,适用于仅发出少数几个请求的情况;语法二、请求DDE服务器应用提供数据并将数据保存在变量中,该格式适用于热连接的情况,即应用程序已经与服务器建立通道。下面分别予以介绍。
语法一、请求DDE服务器应用提供数据并将数据保存在变量中,该格式不要求事先打开通道,适用于仅发出少数几个请求的情况。
语法GetRemote ( location, target, applname, topicname )
参数location:string类型,指明要从DDE服务器的哪个位置返回数据。位置的表达方式由具体的DDE服务器决定target:string类型变量,用于保存返回的数据applname:string类型,指定DDE服务器应用的DDE名称topicname:string类型,指定命令中要使用的DDE应用的数据或实例返回值Integer。函数执行成功时返回1,发生错误时返回下述值之一:-1未启动连接-2请求被拒绝如果任何参数的值为NULL,GetRemote()函数返回NULL。
语法二、请求DDE服务器应用提供数据并将数据保存在变量中,该格式适用于热连接的情况,即应用程序已经与服务器建立通道。语法GetRemote ( location, target, handle {, windowhandle } )参数location:string类型,指明要从DDE服务器的哪个位置返回数据。位置的表达方式由具体的DDE服务器决定target:string类型变量,用于保存返回的数据handle:long类型,指定使用的DDE通道句柄 windowhandle:long类型,可选项,指明用做DDE客户的PowerBuilder窗口的窗口句柄。省略该参数时,当前应用中的活动窗口用做DDE客户。使用handle()函数可以得到窗口句柄。返回值Integer。函数执行成功时返回1,发生错误时返回下述值之一:-1未启动连接-2请求被拒绝-9Handle参数的值为NULL
OpenChannel()
功能打开连接DDE服务器的通道。
语法OpenChannel ( applname, topicname {, windowhandle } )applname:string类型,指定DDE服务器应用的DDE名称topicname:string类型,指定命令中要使用的DDE应用的数据或实例windowhandle:long类型,可选项,指明用做DDE客户的PowerBuilder窗口的窗口句柄。省略该参数时,当前应用中的活动窗口用做DDE客户返回值Long。函数执行成功时返回一个正数作为已打开通道的句柄,发生错误时返回下述值之一:-1打开失败-9句柄为NULL
RespondRemote()
功能发送一条DDE消息,指示是否接受来自远程DDE应用的命令或数据。
语法RespondRemote ( boolean )
参数boolean:其值为boolean量的逻辑表达式,TRUE表示接收先前收到的命令或数据,FALSE表示不接收先前收到的命令或数据返回值Integer。函数执行成功时返回1,发生错误时返回-1。如果boolean参数的值为NULL,RespondRemote()函数返回NULL。
SetRemote()
功能请求服务器应用把指定项设置为指定值。该函数有两种语法格式:语法一、请求DDE服务器应用接收保存在指定位置的数据,该格式不要求事先打开通道,适用于仅发出少数几个请求的情况;语法二、请求DDE服务器应用接收保存在指定位置的数据,该格式适用于热连接的情况,即应用程序已经与服务器建立通道。下面分别予以介绍。
语法一、请求DDE服务器应用接收保存在指定位置的数据,该格式不要求事先打开通道,适用于仅发出少数几个请求的情况。
语法SetRemote ( location, value, applname, topicname )
参数location:string类型,指明要DDE服务器的哪一部分接收数据。位置的表达方式由具体的DDE服务器决定value:string类型变量,指定发送给DDE服务器的数据applname:string类型,指定DDE服务器应用的DDE名称topicname:string类型,指定要接收数据的DDE应用的数据或实例返回值Integer。函数执行成功时返回1,发生错误时返回下述值之一:-1未启动连接-2请求被拒绝如果任何参数的值为NULL,SetRemote()函数返回NULL。
语法二、请求DDE服务器应用接收保存在指定位置的数据,该格式适用于热连接的情况,即应用程序已经与服务器建立通道。
语法SetRemote ( location, value, handle {, windowhandle } )
参数location:string类型,指明要DDE服务器的哪一部分接收数据。位置的表达方式由具体的DDE服务器决定value:string类型变量,指定发送给DDE服务器的数据handle:long类型,指定使用的DDE通道句柄windowhandle:long类型,可选项,指明用做DDE客户的PowerBuilder窗口的窗口句柄。省略该参数时,当前应用中的活动窗口用做DDE客户返回值Integer。函数执行成功时返回1,发生错误时返回下述值之一:-1未启动连接-2请求被拒绝-9Handle参数的值为NULL
StartHotLink()
功能建立与DDE服务器应用的热连接,热连接建立之后,DDE服务器端相关数据的变化会立即触发PowerBuilder应用相关窗口的HotLinkAlarm事件。
语法StartHotLink ( location, applname, topic )
参数location:string类型,指明DDE服务器哪一部分数据变化时触发窗口的HotLinkAlarm事件。位置的表达方式由具体的DDE服务器决定applname:string类型,指定DDE服务器应用的DDE名称topicname:string类型,指定数据改变将触发窗口的HotLinkAlarm事件的DDE应用的数据或实例返回值Integer。函数执行成功时返回1,发生错误时返回下述值之一:-1无指定服务器-2请求被拒绝如果任何参数的值为NULL,StartHotLink()函数返回NULL。
StopHotLink()
功能关闭与DDE服务器应用的热连接。
语法StopHotLink ( location, applname, topic )
参数location:string类型,指明要终止DDE服务器哪一部分的热连接。位置的表达方式由具体的DDE服务器决定applname:string类型,指定DDE服务器应用的DDE名称topicname:string类型,指定要终止热连接的DDE应用的数据或实例返回值Integer。函数执行成功时返回1,发生错误时返回下述值之一:-1连接未曾启动-2请求被拒绝-3不能终止服务器如果任何参数的值为NULL,StopHotLink()函数返回NULL。
CPU()
功能得到自当前应用程序启动后开始CPU所消耗的时间,以毫秒为单位。
语法CPU()
返回值Long。返回自当前应用程序启动后开始CPU所消耗的时间,以毫秒为单位。
Idle()
功能该函数在用户每次活动(例如,按键盘、移动鼠标等)后重置定时器,n秒后触发应用对象的Idle事件。
语法Idle ( n )
参数n:指定空闲时间间隔,以秒为单位。该参数的值设置为0时,停止空闲检测,不再触发应用对象的Idle事件返回值Integer。函数执行成功时返回1,此时启动定时器。如果不能启动定时器或定时器未启动而n的值指定为0时,函数返回-1。如果任何参数的值为NULL,Idle()函数返回NULL。用法利用Idle()函数,应用程序可以构造自己的屏幕保护程序,避免安全数据的泄露。当使用Idle()函数已经启动了定时器后,如果再次以非0参数调用Idle()函数,那么该函数重设时间间隔,但并不启动新的定时器。Idle()函数启动定时器后,如果在指定的时间间隔(从用户最近一次操作算起)内没有操作应用程序,那么就触发应用对象的Idle事件,在这个事件中可以编写关闭窗口、退出数据库登录等一系列代码,然后使用Restart()函数重新启动应用程序,起到保密的目的。发生下述任何情况时,系统自动重置定时器(即重新开始计时):n 用户在该应用程序的任何窗口内移动鼠标或单击鼠标(双击鼠标时首先触发单击事件)n 在该应用程序的某个窗口是当前窗口时用户按下了任意一个或多个键n 在该应用程序的窗口最小化时,用户在该应用的图标上单击鼠标或移动鼠标n 在该应用程序的窗口最小化并且该应用程序是当前应用程序(应用名称被加亮显示)时,用户按了任何按键n 可视数据窗口检索数据时引起的编辑控件(指漂浮在数据窗口当前行/列上的编辑控件)重绘操作
Timer()
功能 在指定的时间间隔内反复触发指定窗口的定时器事件。
语法Timer ( interval {, windowname } )
参数interval:指定两次触发Timer事件之间的时间间隔,有效值在0到65之间。如果该参数的值指定为0,那么关闭定时器,不再触发指定窗口的Timer事件windowname:窗口名,指定时间间隔到时要触发哪个窗口的Timer事件。省略该参数时,触发当前窗口的Timer事件返回值Integer。函数执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,Timer()函数返回NULL。用法使用Timer()函数可以周期性地触发指定窗口的Timer事件,这样,每当时间间隔过去时,应用程序都可以完成一些周期性的工作,比如绘制简单动画等。将Timer()的interval参数设置为非0值时启动定时器并开始计时;将该函数的interval参数设置为0时关闭定时器,终止计时任务。需要注意的是,在Microsoft Windows系统中,该函数能够计时的最小时间间隔为0.055秒(约1/18秒),如果把interval参数的值设置小于0.055,那么该定时器将每隔0.055秒触发一次窗口的Timer事件。Microsoft Windows 3.x最多只支持系统中同时启动16个定时器。
Day()
功能得到日期型数据中的号数(1到31之间的整数值)。
语法Day ( date )
参数date:要得到号数的日期值返回值 Integer。函数执行成功时返回号数(1到31之间的整数值)。如果date参数的值为NULL,则Day()函数返回NULL。
DayName()
功能得到指定日期是一周中的星期几(例如,Sunday, Monday...)。
语法DayName ( date )
参数date:date类型值或变量返回值String。函数执行成功时返回指定日期的星期表示(例如,Sunday, Monday...)。如果date参数的值为NULL,则DayName()函数返回NULL。
DayNumber()
功能得到日期型数据是一星期中的第几天(用1到7之间的整数表示,星期天为1,星期一为2,...)。
语法DayNumber ( date )
参数date:date类型值或变量返回值Integer。函数执行成功时返回指定日期是一星期中的第几天(用1~7表示,星期天为1,星期一为2,...)。如果date参数的值为NULL,则DayNumber()函数返回NULL。
DaysAfter()
功能得到两个日期间的天数。
语法DaysAfter ( date1, date2 )
参数date1:date类型,指定起始日期date2:date类型,指定终止日期返回值Long。函数执行成功时得到两个日期之间的天数。如果date2的日期在date1的前面,那么DaysAfter()函数返回负值。如果任何参数的值为NULL,则DaysAfter()函数返回NULL。
Hour()
功能得到时间值中的小时,采用24小时制。
语法Hour ( time )
参数time:time类型的值返回值Integer。函数执行成功时得到time参数中的小时(00到23之间)。如果time参数的值为NULL,则Hour()函数返回NULL。
Minute()
功能得到时间值中的分钟,有效值在00~59之间。
语法Minute ( time )
参数time:time类型的值返回值Integer。函数执行成功时得到time参数中的分钟(00到59之间)。如果time参数的值为NULL,则Minute()函数返回NULL。
Month()
功能得到日期值中的月份,有效值在1~12之间。
语法Month ( date )
参数date:date类型的值返回值Integer。函数执行成功时得到date参数中的月份(1到12之间)。如果date参数的值为NULL,则Month()函数返回NULL。
Now()
功能得到客户机的当前系统时间,返回值为Time类型。
语法Now()返回值Time。该函数返回客户机的当前系统时间。
RelativeDate()
功能得到指定日期前多少天或后多少天的日期。
语法RelativeDate(date,n)
参数date:Date类型,指定基准日期n:integer类型,指定天数返回值Date。当n的值大于0时返回参数date指定日期后第n天的日期;当n的值小于0时返回参数date指定日期前第n天的日期。如果任何参数的值为NULL,则RelativeDate()函数返回NULL。
RelativeTime()
功能得到指定时间前多少秒或后多少秒的时间,采用24小时制。
语法RelativeTime ( time, n )参数time:time类型,指定基准时间n:long类型,指定秒数返回值Time。当n的值大于0时返回参数time指定时间后第n秒的时间;当n的值小于0时返回参数time指定时间前第n秒的时间。如果任何参数的值为NULL,则RelativeTime()函数返回NULL。
Second()
功能得到时间值中的秒,有效值在00~59之间。
语法Second ( time )
参数time:time类型的值返回值Integer。函数执行成功时得到time参数中的秒(00到59之间)。如果time参数的值为NULL,则Second()函数返回NULL。
Today()
功能得到当前系统日期,在某些情况下,同时得到当前系统时间。
语法Today()返回值Date。该函数返回当前系统日期。用法单独调用Today()函数时,该函数总是返回当前系统日期,但是,虽然Today()函数的返回值类型为Date,在该函数用做某些函数的参数、而该参数要求DateTime类型的值时,Today()函数也能够在返回当前系统日期的同时返回当前系统时间。再如,Today()函数作为数据窗口控件SetItem()函数的参数,该函数参数中指定的数据窗口列的数据类型为DateTime,那么当前系统日期和时间将同时设置到数据窗口指定项中。
Year()
功能得到日期值中的年度(有效取值1000到3000)。
语法Year(date)
参数date:date类型的值返回值Integer。函数执行成功时得到date参数中的年份(采用四位数字),发生错误时返回1900,如果date参数的值为NULL,则Year()函数返回NULL。用法当应用程序把有两位数字表示年份的字符串转换成日期时,PowerBuilder根据下述规则选择世纪:如果年份值在00到49之间,PowerBuilder将年份中的世纪(前两位数字)当作20;如果年份值在50到99之间,PowerBuilder将年份中的世纪(前两位数字)当作19。比如,字符串"20-10-25"被PowerBuilder转换为2020-10-25;字符串"98-10-25"被PowerBuilder转换为1998-10-25。因此,如果应用程序中需要指定1950年之前的日期,应该使用四位数字表示年份,以避免引起歧义。PowerBuilder能够处理的年份从1000到3000之间。
FileClose()
功能关闭先前用FileOpen()函数打开的文件。
语法FileClose ( fileno )
参数fileno:integer,指定要关闭文件的文件句柄,该句柄使用FileOpen()函数打开文件时得到返回值Integer。函数执行成功时返回1,发生错误时返回-1。如果fileno参数的值为NULL,那么FileClose()函数返回NULL。
FileDelete()
功能删除指定的文件。
语法FileDelete ( filename )
参数filename:string类型,指定要删除文件的文件名,其中可以包含路径返回值Boolean。函数执行成功时返回TRUE,发生错误时返回FALSE。如果filename参数的值为NULL,那么FileDelete()函数返回NULL。
FileExists()
功能检查指定的文件是否存在。
语法FileExists ( filename )
参数filename:string类型,指定要检查存在性的文件的文件名,其中可以包含路径返回值Boolean。如果指定文件存在时返回TRUE,不存在时返回FALSE。如果filename参数的值为NULL,那么FileExists()函数返回NULL。用法如果filename参数指定的文件被另一个应用加锁锁住,那么FileExists()函数也将返回FALSE。
FileLength()
功能得到指定文件的长度(以字节为单位)。
语法FileLength ( filename )
参数filename:string类型,指定要得到其长度的文件的文件名,其中可以包含路径返回值Long。函数执行成功时返回指定文件的长度(以字节为单位)。如果指定的文件不存在,函数返回-1。如果filename参数的值为NULL,那么FileLength()函数返回NULL。
FileOpen()
功能以指定的读写方式打开指定的文件,同时返回该文件的句柄。
语法FileOpen(filename{,filemode{,fileaccess{,filelock{,writemode,{creator,filetype}}}}})
参数filename:string类型,指定要打开文件的名称,其中可以包含路径 filemode:FileMode枚举类型,可选项,指定文件打开方式。有效取值为:?LineMode! - 缺省值,行模式;?StreamMode! - 流模式fileaccess:FileAccess枚举类型,可选项,指定文件访问方式。有效取值为:?Read! - 缺省值,只读方式,这样打开的文件只能进行读操作;?Write! - 只写方式,这样打开的文件只能进行写操作?filelock:FileLock枚举类型,可选项,指定文件加锁方式。有效取值为:n LockReadWrite! - 缺省值,只有打开该文件的用户能够访问该文件,其它用 户对该文件的访问均被拒绝;n LockRead! - 只有打开该文件的用户能够读该文件,但其它任何用户均可写该文件;n LockWrite! - 只有打开该文件的用户能够写该文件,但其它任何用户均可读该文件;n Shared! - 所有用户均可读写该文件writemode:WriteMode枚举类型,可选项,当fileaccess参数指定为Write!时,该参数指定在指定文件已经存在时数据的添加方式。有效取值为:?Append! - 缺省值,将数据添加到原文件尾部;?Replace! - 覆盖原有数据creator:可选项,用于Macintosh机,使用四个字符的字符串指定文件的创建者。指定该参数后,必须同时指定filetype参数filetype:可选项,用于Macintosh机,使用四个字符的字符串指定文件类型返回值Integer。函数执行成功时返回打开文件的句柄,随后的文件操作函数利用该句柄完成对文件的操作。发生错误时函数返回-1。如果任何参数的值为NULL,那么FileOpen()函数返回NULL。用法当文件以行模式打开时,每执行一次FileRead()函数读取一行数据;每执行一次FileWrite()函数,该函数自动在写出的字符串末尾增加一个回车(CR)换行(LF)符(这是应用程序在Windows 系统中运行时的情况,在UNIX下只加一个换行字符)。当文件以流模式打开时,执行一次FileRead()函数读取32,765个字节的数据,如果余下数据没有这么多,那么FileRead()函数就读取所有余下的数据;执行一次FileWrite()函数时,最多可写入32,765个字节的数据,并且不添加回车换行字符。当文件以写方式使用FileOpen()函数打开时,如果指定的文件不存在,那么FileOpen()函数创建该文件。
FileRead()
功能从指定文件中读取数据。
语法FileRead ( fileno, variable )
参数fileno:integer类型,指定文件句柄(由FileOpen()函数得到)variable:string或blob类型的变量,用于保存读取的数据返回值Integer。函数执行成功时返回读取的字符数或字节数;如果在读取任何字符前读到了文件结束符(EOF),则FileRead()函数返回-100;当指定文件以行模式打开时,如果在读取任何字符之前遇到了回车(CR)或换行(LF)字符,则FileRead()函数返回0。如果发生其它错误,FileRead()函数返回-1。如果任何参数的值为NULL,那么FileRead()函数返回NULL。用法当指定文件以行模式(Line Mode)打开时,FileRead()函数一次读取一行数据,并把它保存到参数variable中,然后跳过行结束符(回车换行符,操作系统不同,使用的字符也不同),把文件指针移动到下一行的起始位置。当文件以流模式(Stream Mode)打开时,FileRead()函数或一直读取到文件结尾,或读取32,765字节的数据,决定于两者哪个数据长度更短些。
FileSeek()
功能将文件指针移动到指定位置。读写文件时相应函数会自动移动文件指针。
语法FileSeek ( fileno, position, origin )
参数fileno:integer类型,指定文件句柄(由FileOpen()函数得到)position:long类型,指定相对于origin参数指定位置的新位置偏移量,以字节为单位origin:SeekType枚举类型,指定从哪里开始移动文件指针,即指针移动的基准。有效取值为:?FromBeginning! - 缺省值,从文件开头移动指针;?FromCurrent! - 从当前位置移动文件指针;?FromEnd! - 从文件结尾处移动文件指针返回值Long。函数执行成功时返回指针移动后的指针位置。如果任何参数的值为NULL,那么FileSeek()函数返回NULL。