社区
PowerBuilder
帖子详情
我按照下面的方法做,怎么还是不对哪?函数都没有定义?这个不是系统函数嘛?还是有什么pbl文件?
littlefairy
2001-11-29 03:38:03
首先创建一个窗口WIN,将窗口的类型属性定义为MDI框架窗口类型。
然后再创建另外一个窗口WINCH,该窗口的类型属性定义为子窗口类型。
打开MDI框架窗体
open(WIN)
打开子窗口
windowchildwmdi
win.getchild(″winch″,wmdi)
opensheet(wmdi,win,5,original!)
...全文
39
2
打赏
收藏
我按照下面的方法做,怎么还是不对哪?函数都没有定义?这个不是系统函数嘛?还是有什么pbl文件?
首先创建一个窗口WIN,将窗口的类型属性定义为MDI框架窗口类型。 然后再创建另外一个窗口WINCH,该窗口的类型属性定义为子窗口类型。 打开MDI框架窗体 open(WIN) 打开子窗口 windowchildwmdi win.getchild(″winch″,wmdi) opensheet(wmdi,win,5,original!)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
13854663488
2001-11-29
打赏
举报
回复
getchild不能用到window中,他是datawindow的函数
littlefairy
2001-11-29
打赏
举报
回复
我是指getchild函数
还有windowchildwmdi这是怎么回事?
dw2xls已升级至pb11.5
dw2xls已升级至pb11.5 dw2xls已经开发了好几年了,最近也把这个程序开源了,由于自已一直以来都是用pb9开发程序,还
没有
升级到更高的版本,所以一直都没去 升级这个程序.这两年经常会收到一些朋友的来信,询问如何把dw2xls升级到pb10或以上更高的版本,甚至部分用反编译程序的朋友,为了这个功能,都 愿意付费购买.考虑到一些朋友在升级过程中,还是会碰过一些困难,为了方便大家,所以决定还是自已把程序升级到pb11.5,并提供给大家下载.如果使用 pb10, pb10.5, pb11版本的朋友,请使用开发工具直接进行升级,然后再把附件中的n_cst_unicode.sru, n_cst_dw2excel.sru两个
文件
,导入到dw2xls.
pbl
文件
即可. 在这里,随便说一下pb10以下版本的程序,如果升级到pb10以上版本,需要注意的地方: PB10 以下版本的程序,字符串使用的ANSI编码,pb10或以上版本,使用的是Unicode编码,所以在API
函数
定义
上,会有些出入.大部分在参数或返回 值中使用了字符串的Windows API
函数
,都提供了两个版本的API,一个是支持ANSI的,一般在
函数
后面加个A作为标记,一个是支持Unicode的,一般在
函数
后面加 W(WideChar)作为标记.如GetWindowTextA和GetWindowTextW,所以在pb9时,
定义
API
函数
一般使用的是ANSI 版本(因为PB9使用的是ANSI编码),如果是升级到PB10或以后版本,则可以把API
函数
定义
为使用Unicode版本即可,而不是使用PB程序直 接升级的那样,继续采用Ansi版本. 此外,PB在
定义
Windows Api时,大小写是敏感的,这个跟PBScript不同,也是需要注意的地方.
powerbuilder
PrintDefineFont() 功能
定义
打印作业使用的字体,对每个打印作业PowerBuilder支持八种字体。 语法PrintDefineFont(printjobnumber,fontnumber,facename,height,weight,fontpitch,fontfamily, italic,underline) 参数printjobnumber:用PrintOpen()
函数
打开的打印作业号fontnumber:指定赋给当前
定义
字体的编号,有效值在1到8之间 facename:string类型,指定字体名称,该字体应该是你的打印机支持的字体,比如“宋体”height:Integer类型,使用正值指定字体的高度,以千分之一英寸为单位;使用负值指定字体点数,比如,-18代表18点。一般来说,使用点数更精确些weight:指定字体的磅数,正常字体为400磅,粗体为700磅fontpitch:FontPitch枚举类型,指定字体标准。有效取值为:Default! - 缺省值;Fixed! - 固定形式;Variable! - 可变形式fontfamily:FontFamily枚举类型,指定字体系列。有效取值为:AnyFont!、Decorative!、Modern!、Roman!、Script!、Swiss!italic:boolean类型,指定是否使用斜体样式。有效取值为:TRUE - 使用斜体样式;FALSE - 不使用斜体样式。缺省值为FALSEunderline:boolean类型,指定是否加下划线。有效取值为:TRUE - 加下划线;FALSE - 不加下划线。缺省值为FALSE返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,PrintDefineFont()
函数
返回NULL。用法在一个打印作业中,应用程序能够最多同时
定义
8种字体。当应用程序需要使用更多的字体时,可以在使用了某个字体号输出内容后使用PrintDefineFont()
函数
将该字体号对应的字体更换为其它字体。 -------------------------------------------------------------------------------- PrintLine() 功能在当前打印页上绘出指定厚度的一条线。 语法PrintLine ( printjobnumber, x1, y1, x2, y2, thickness ) 参数printjobnumber:用PrintOpen()
函数
打开的打印作业号x1:integer类型,指定直线起点的x坐标,以千分之一英寸为单位y1:integer类型,指定直线起点的y坐标,以千分之一英寸为单位x2:integer类型,指定直线终点的x坐标,以千分之一英寸为单位y2:integer类型,指定直线终点的y坐标,以千分之一英寸为单位thickness:integer类型,指定直线的厚度,以千分之一英寸为单位返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,PrintLine()
函数
返回NULL。用法应用程序执行了PrintLine()
函数
后,该
函数
并不改变打印光标的位置。 -------------------------------------------------------------------------------- PrintOpen() 功能启动打印作业并返回作业号。 语法PrintOpen ( { jobname } ) 参数jobname:string类型,可选项,指定要打开打印作业的名称,该名称将显示在打印管理器窗口中返回值Long。
函数
执行成功时返回打印作业号,发生错误时返回-1。如果任何参数的值为NULL,PrintOpen()
函数
返回NULL。用法应用程序执行PrintOpen()
函数
后,启动新的打印作业并走纸到下一页,同时将打印机缺省字体设置为该打印作业的字体。打印光标的位置位于打印区的左上角。其它同组的打印
函数
使用PrintOpen()
函数
返回的作业号来标识作业。需要注意的是,使用PrintOpen()
函数
打开打印作业、使用同组的其它
函数
完成打印任务后,必须使用PrintClose()关闭打印作业,或根据需要使用PrintCancel()
函数
取消打印作业。 -------------------------------------------------------------------------------- PrintOval() 功能在指定位置以指定线宽绘制椭圆或圆。 语法PrintOval ( printjobnumber, x, y, width, height, thickness ) 参数printjobnumber:用PrintOpen()
函数
打开的打印作业号x:integer类型,指定椭圆或圆外形框左上角的x坐标,以千分之一英寸为单位y:integer类型,指定椭圆或圆外形框左上角的y坐标,以千分之一英寸为单位width:integer类型,指定椭圆或圆外形框的宽度,以千分之一英寸为单位height:integer类型,指定椭圆或圆外形框的高度,以千分之一英寸为单位thickness:integer类型,指定椭圆或圆外边线的厚度,以千分之一英寸为单位返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,PrintOval()
函数
返回NULL。用法应用程序执行了PrintOval()
函数
后,该
函数
并不改变打印光标的位置。PrintOval()
函数
绘出的椭圆或圆是实心的,也就是说,执行该
函数
后,椭圆或圆
下面
的文字或图像将完全被覆盖。如果想在椭圆或圆中输出文字或图形,那么应用程序应该首先绘制椭圆或圆,然后使用其它
函数
在椭圆或圆中输出文字或图形。 -------------------------------------------------------------------------------- PrintPage() 功能将当前页发送给打印机或打印池并在当前打印作业中启动一个新的打印页。 语法PrintPage ( printjobnumber ) 参数printjobnumber:用PrintOpen()
函数
打开的打印作业号返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,PrintPage()
函数
返回NULL。 -------------------------------------------------------------------------------- PrintRect() 功能在指定位置以指定线宽打印矩形。 语法PrintRect ( printjobnumber, x, y, width, height, thickness ) 参数printjobnumber:用PrintOpen()
函数
打开的打印作业号x:integer类型,指定矩形左上角的x坐标,以千分之一英寸为单位y:integer类型,指定矩形左上角的y坐标,以千分之一英寸为单位width:integer类型,指定矩形的宽度,以千分之一英寸为单位height:integer类型,指定矩形的高度,以千分之一英寸为单位thickness:integer类型,指定矩形边线的厚度,以千分之一英寸为单位返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,PrintRect()
函数
返回NULL。用法应用程序执行了PrintRect()
函数
后,该
函数
并不改变打印光标的位置。PrintRect()
函数
绘出实心的矩形,也就是说,执行该
函数
后,矩形
下面
的文字或图像将完全被覆盖。如果想在矩形中输出文字或图形,那么应用程序应该首先绘制矩形,然后使用其它
函数
在矩形中输出文字或图形。 -------------------------------------------------------------------------------- PrintRoundRect() 功能在指定位置以指定线宽打印圆角矩形。 语法PrintRoundRect(printjobnumber,x,y,width,height,xradius,yradius,thickness) 参数printjobnumber:用PrintOpen()
函数
打开的打印作业号x:integer类型,指定圆角矩形左上角的x坐标,以千分之一英寸为单位y:integer类型,指定圆角矩形左上角的y坐标,以千分之一英寸为单位width:integer类型,指定圆角矩形的宽度,以千分之一英寸为单位height:integer类型,指定圆角矩形的高度,以千分之一英寸为单位xradius:integer类型,指定圆角矩形圆角部分的x半径,以千分之一英寸为单位yradius:integer类型,指定圆角矩形圆角部分的y半径,以千分之一英寸为单位thickness:integer类型,指定圆角矩形边线的厚度,以千分之一英寸为单位返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,PrintRoundRect()
函数
返回NULL。用法应用程序执行了PrintRoundRect()
函数
后,该
函数
并不改变打印光标的位置。PrintRoundRect()
函数
绘出实心的圆角矩形,也就是说,执行该
函数
后,圆角矩形
下面
的文字或图像将完全被覆盖。如果想在圆角矩形中输出文字或图形,那么应用程序应该首先绘制圆角矩形,然后使用其它
函数
在圆角矩形中输出文字或图形。 -------------------------------------------------------------------------------- PrintScreen() 功能在打印作业中打印屏幕图像。 语法PrintScreen ( printjobnumber, x, y {, width, height } ) 参数printjobnumber:用PrintOpen()
函数
打开的打印作业号x:integer类型,指定要打印屏幕图像左上角在打印页上的x坐标,以千分之一英寸为单位y:integer类型,指定要打印屏幕图像左上角在打印页上的y坐标,以千分之一英寸为单位width:integer类型,可选项,指定屏幕图像的打印宽度,以千分之一英寸为单位。如果省略了该参数,那么PowerBuilder按屏幕的原始宽度打印屏幕图像。如果指定了该参数,必须同时指定height参数height:integer类型,可选项,指定屏幕图像的打印高度,以千分之一英寸为单位。如果省略了该参数,那么PowerBuilder按屏幕的原始高度打印屏幕图像返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,PrintScreen()
函数
返回NULL。 -------------------------------------------------------------------------------- PrintSend() 功能直接向打印机发送任意字符串,通常用于发送打印机的控制代码。 语法PrintSend ( printjobnumber, string {, zerochar } ) 参数printjobnumber:用PrintOpen()
函数
打开的打印作业号string:string类型,指定发送到打印机的字符串。在该字符串中,使用非打印字符的ASCII码值表示非打印字符zerochar:integer类型,可选项,指定在string参数中用于表示数值0的ASCII码值。有效取值在1到255之间返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,PrintSend()
函数
返回NULL。用法应用程序使用PrintSend()
函数
可以直接向打印机发送控制序列(换码序列),比如,设置打印文字的浓淡、打印页的四周空白等。不同类型的打印机使用不同的控制序列,你需要翻一翻你的打印机手册。由于PowerBuilder使用数值0(即ASCII码为0的字符)结束每个字符串,因此,如果打印控制序列中包含了数值0,应用程序需要使用其它字符在参数string中替代数值0,并用zerochar参数指明这个替代字符。一般来说,应该选择一个打印机控制序列中不使用的字符作为0值字符的替代字符。通常情况下,按下述次序组织打印作业:1. 使用PrintOpen()
函数
打开打印作业2. 使用PrintSend()
函数
设置打印机特性,比如打印方向、四周空白等3. 使用PrintDefineFont()和PrintSetFont()
函数
设置该打印作业使用的字体4. 使用该组的其它
函数
打印输出文字或图形5. 执行PrintClose()
函数
关闭打印作业 -------------------------------------------------------------------------------- PrintSetFont() 功能设置当前打印作业使用的字体。 语法PrintSetFont ( printjobnumber, fontnumber ) 参数printjobnumber:用PrintOpen()
函数
打开的打印作业号fontnumber:指定该打印作业使用字体的字体编号,该编号与PrintDefineFont()
函数
中
定义
的编号应该对应,字体编号的有效取值在1到8之间,0表示使用打印机的缺省字体返回值Integer。
函数
执行成功时返回当前字体的高度,发生错误时返回-1。如果任何参数的值为NULL,PrintSetFont()
函数
返回NULL。 -------------------------------------------------------------------------------- PrintSetSpacing() 功能设置行间距因子,打印
函数
将使用该因子来决定行间距。 语法PrintSetSpacing ( printjobnumber, spacingfactor ) 参数printjobnumber:用PrintOpen()
函数
打开的打印作业号spacingfactor:指定行间距因子,用字符高度的倍数表示,缺省值为1.2返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,PrintSetSpacing()
函数
返回NULL。用法在PowerBuilder应用程序中,行间距与字符的高度成正比,缺省值为字符高度的1.2倍。当Print组
函数
生成新行时,
系统
自动把打印光标的x坐标位置设置为0,y坐标位置在原有基础上增加当前行距值。使用PrintSetSpacing()
函数
可以改变当前打印作业的行距。 -------------------------------------------------------------------------------- PrintSetup() 功能打开打印机设置对话框。 语法PrintSetup ( ) 返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,PrintSetup()
函数
返回NULL。用法当
系统
中安装了多种打印机时,在Windows 95中PrintSetup()
函数
打开如图2-1所示的对话框,单击“Setup”按钮设置打印机各种特性。如果
系统
中只有一个打印机,则直接打开该打印机的打印设置对话框。需要注意的是,在Windows95和Windows NT 3.51以后的版本中,使用PrintSetup()
函数
设置的打印机设置只对当前应用起作用,并不影响其它应用的打印机设置。对Windows 3.1来说,使用PrintSetup()
函数
设置的打印机设置影响
系统
中的所有应用。 -------------------------------------------------------------------------------- PrintText() 功能在指定位置打印一行文本。 语法PrintText ( printjobnumber, string, x, y {, fontnumber } ) 参数printjobnumber:用PrintOpen()
函数
打开的打印作业号string:string类型,指定要打印的文本x:integer类型,指定文本开始打印位置的x坐标,以千分之一英寸为单位y:integer类型,指定文本开始打印位置的y坐标,以千分之一英寸为单位fontnumber:可选参数,指定打印文本使用的字体号,该编号由PrintDefineFont()
函数
确定。省略该参数时,以打印作业的当前字体打印文本返回值Integer。
函数
执行成功时返回文本打印后打印光标的x位置,即参数x的值加上打印文本的宽度。发生错误时返回-1。如果任何参数的值为NULL,PrintText()
函数
返回NULL。 -------------------------------------------------------------------------------- PrintWidth() 功能确定一个字符串在指定打印作业中按当前字体所占的宽度,以千分之一英寸为单位。 语法PrintWidth ( printjobnumber, string ) 参数printjobnumber:用PrintOpen()
函数
打开的打印作业号string:string类型,指定要决定其打印宽度的字符串返回值Integer。
函数
执行成功时返回按当前字体计算的字符串打印宽度,以千分之一英寸为单位,发生错误时返回-1。如果任何参数的值为NULL,PrintWidth()
函数
返回NULL。 -------------------------------------------------------------------------------- PrintX() 功能返回打印光标的x坐标位置。 语法PrintX ( printjobnumber ) 参数printjobnumber:用PrintOpen()
函数
打开的打印作业号返回值Integer。
函数
执行成功时返回打印光标的x坐标位置,以千分之一英寸为单位,发生错误时返回-1。如果任何参数的值为NULL,PrintX()
函数
返回NULL。 -------------------------------------------------------------------------------- PrintY() 功能返回打印光标的y坐标位置。 语法PrintY ( printjobnumber ) 参数printjobnumber:用PrintOpen()
函数
打开的打印作业号返回值Integer。
函数
执行成功时返回打印光标的y坐标位置,以千分之一英寸为单位,发生错误时返回-1。如果任何参数的值为NULL,PrintY()
函数
返回NULL。 LibraryCreate() 功能创建一个空的PowerBuilder应用库,并可根据需要在创建应用库的同时添加库注解。 语法LibraryCreate ( libraryname{, comments } ) 参数libraryname:string类型,指定要创建应用库的名称,可以带上路径,不带路径时在当前目录下创建应用库comments:string类型,可选项,指定要创建的应用库的注解返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,LibraryCreate()
函数
返回NULL。用法LibraryCreate()
函数
在指定路径下创建一个空的PowerBuilder应用库(
PBL
)。如果在指定应用库名称时
没有
指定
文件
的扩展名,那么该
函数
自动加上扩展名.
PBL
。 -------------------------------------------------------------------------------- LibraryDelete() 功能删除应用库库
文件
或应用库中的数据窗口对象。 语法LibraryDelete ( libraryname{, objectname, objecttype } ) 参数libraryname:string类型,指定库名,可以带上路径,不带路径时在
系统
搜索路径下查找应用库objectname:string类型,可选项,指定要从库中删除的数据窗口对象的名称objecttype:LibImportType类型,可选项,指定要删除对象的类型,目前仅支持ImportDataWindow!返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,LibraryDelete()
函数
返回NULL。 用法执行LibraryDelete()
函数
时,如果未指定后两个参数,那么该
函数
删除指定的应用库;如果指定了后两个参数,那么该
函数
删除指定应用库中指定的数据窗口对象。LibraryDelete()
函数
只能删除应用库中的数据窗口对象,如果想删除其它对象,那么只能在PowerBuilder开发环境中使用库管理画笔(Library Painter)来实现了。 -------------------------------------------------------------------------------- LibraryDirectory() 功能 得到应用库中指定对象的信息列表,内容包括对象名称、最近修改日期和时间、以及对象的注释。 语法LibraryDirectory ( libraryname, objecttype ) 参数libraryname:string类型,指定PowerBuilder应用库的名称,如果名称中未指定路径,那么该
函数
根据操作
系统
标准的
文件
搜索路径查找指定
文件
objecttype:LibDirType枚举类型,指定希望
函数
列出的对象类型,有效取值请参看用法。返回值String。
函数
执行成功时返回一个字符串,每个对象占用一行,行中各信息之间使用Tab字符(~t)分隔。行中信息格式为:对象名~t修改日期/时间~t注释~n发生错误时
函数
返回空字符串("")。如果任何参数的值为NULL,LibraryDirectory()
函数
返回NULL。 用法LibraryDirectory()
函数
的objecttype参数是个LibDirType枚举类型的量,其有效取值为:DirAll!得到所有对象的信息DirApplication!得到应用对象的信息DirDataWindow!得到所有数据窗口对象的信息DirFunction!得到所有
函数
对象的信息DirMenu!得到所有菜单对象的信息DirPipeline!得到所有数据管道对象的信息DirProject!得到工程对象的信息DirQuery!得到所有查询对象的信息DirStructure!得到所有结构对象的信息DirUserObject!得到所有用户对象的信息DirWindow!得到所有窗口对象的信息使用LibraryDirectory()
函数
得到指定对象的名称、修改日期/时间以及可能的注释后,应用程序既可以使用Pos()
函数
进行定位和字符串分割,也可以使用数据窗口的ImportString()
函数
将结果显示在数据窗口中。 -------------------------------------------------------------------------------- LibraryExport() 功能从指定应用库中以对象的语法
定义
格式卸出对象。 语法LibraryExport ( libraryname, objectname, objecttype ) 参数libraryname:string类型,指定要移出对象的应用库的名称,如果名称中未指定路径,那么该
函数
根据操作
系统
标准的
文件
搜索路径查找指定
文件
objectname:string类型,指定要移出对象的名称objecttype :LibExportType枚举类型,指定要移出对象的类型,具体取值请参看用法返回值String。
函数
执行成功时返回指定对象的语法,该语法与使用库管理画笔(Library Painter)移出对象时的语法相同,区别在于LibraryExport()
函数
省略了移出语法的头部。如果发生错误,则
函数
返回空字符串("")。如果任何参数的值为NULL,LibraryExport()
函数
返回NULL。 用法LibraryExport()的objecttype参数的可能取值为: ExportApplication!应用对象ExportDataWindow!数据窗口对象ExportFunction!
函数
对象ExportMenu!菜单对象ExportPipeline!数据管道对象ExportProject!工程对象ExportQuery!查询对象ExportStructure!结构对象ExportUserObject!用户对象ExportWindow!窗口对象 -------------------------------------------------------------------------------- LibraryImport() 功能将以语法格式表示的数据窗口对象装入指定的应用库中。 语法LibraryImport(libraryname,objectname,objecttype,syntax,errors{,comments } ) 参数libraryname:string类型,指定要移入对象的应用库的名称,如果名称中未指定路径,那么该
函数
根据操作
系统
标准的
文件
搜索路径查找指定
文件
objectname:string类型,指定要移入的数据窗口对象的名称 objecttype:LibImportType枚举类型,指定要移入对象的类型,目前该
函数
只支持ImportDataWindow!,表示只能向应用库中移入数据窗口对象syntax:string类型,指定要移入数据窗口对象的语法errors:string类型变量,用于在发生错误时保存出错信息comments:string类型,可选项,用于指定移入对象的注解返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,LibraryImport()
函数
返回NULL。 用法当应用程序在运行过程中动态创建数据窗口对象后,可以使用LibraryImport()
函数
把动态数据窗口对象的
定义
保存到应用库中,以后就可以直接使用该对象了。 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。 -------------------------------------------------------------------------------- FileWrite() 功能向指定
文件
中写数据。 语法FileWrite (fileno , variable ) 参数fileno:integer类型,指定
文件
句柄(由FileOpen()
函数
得到)variable:string或blob类型,其值将写入fileno参数指定的
文件
返回值Integer。
函数
执行成功时返回写入
文件
的字符或字节数,发生错误时返回-1。如果任何参数的值为NULL,那么FileWrite()
函数
返回NULL。用法FileWrite()
函数
从当前
文件
指针开始写入指定数据,写入之后,将
文件
指针调整到刚刚写入数据的下一个字节位置。当
文件
以writemode参数设置为Replace!方式打开时,
文件
指针最初位于
文件
的开头位置;当
文件
以writemode参数设置为Append!方式打开时,
文件
指针最初位于
文件
的结尾位置。当
文件
以行模式打开时,执行FileWrite()
函数
时,该
函数
自动在每次写入数据的后面加上回车换行符,并把
文件
指针移动到回车换行符后面。当
文件
以流模式打开时,FileWrite()
函数
一次最多写入32,765个字节。如果variable参数中数据的长度超过了32,765个字节,那么FileWrite()
函数
只向
文件
中写入前32,765个字符并返回32,765。 -------------------------------------------------------------------------------- GetFileOpenName() 功能显示打开
文件
对话框,让用户选择要打开的
文件
。 语法GetFileOpenName(title,pathname,filename{,extension{,filter}}) 参数title:string类型,指定对话框的标题pathname:string类型变量,用于保存该对话框返回的
文件
路径及
文件
名filename:string类型变量,用于保存该对话框返回的
文件
名extension:string类型,可选项,使用1到3个字符指定缺省的扩展
文件
名 filter:string类型,可选项,其值为
文件
名掩码,指定显示在该对话框的列表框中供用户选择的
文件
名满足的条件(比如*.*,*.TXT,*.EXE等)返回值Integer。
函数
执行成功时返回1;当用户单击了对话框上的“Cancel”按钮时
函数
返回0;发生错误时返回-1。如果任何参数的值为NULL,那么GetFileOpenName()
函数
返回NULL。 用法filter参数的格式为:description,*. ext缺省值为:"All Files (*.*),*.*"其中,description说明扩展名的意义,比如“所有
文件
”、“文本
文件
”等。你可以根据需要指定在打开
文件
对话框中显示的
文件
名类型。当需要指定多种
文件
类型时,各类型之间使用逗号分隔,例如:"PIF
文件
, *.PIF, 批处理
文件
, *.BAT"需要注意的是,该
函数
只是得到一个
文件
名,而并
没有
打开
文件
,需要打开
文件
时,依然需要使用FileOpen()
函数
。 -------------------------------------------------------------------------------- GetFileSaveName() 功能显示保存
文件
对话框,让用户选择要保存到的
文件
。 语法GetFileSaveName(title,pathname,filename{,extension{,filter}}) 参数title:string类型,指定对话框的标题pathname:string类型变量,用于保存该对话框返回的
文件
路径及
文件
名filename:string类型变量,用于保存该对话框返回的
文件
名extension:string类型,可选项,使用1到3个字符指定缺省的扩展
文件
名filter:string类型,可选项,其值为
文件
名掩码,指定显示在该对话框的列表框中供用户选择的
文件
名满足的条件(比如*.*,*.TXT,*.EXE等)返回值Integer。
函数
执行成功时返回1;当用户单击了对话框上的“Cancel”按钮时
函数
返回0;发生错误时返回-1。如果任何参数的值为NULL,那么GetFileSaveName()
函数
返回NULL。 用法filter参数的格式为:description,*. ext缺省值为:"All Files (*.*),*.*"其中,description说明扩展名的意义,比如“所有
文件
”、“文本
文件
”等。你可以根据需要指定在打开
文件
对话框中显示的
文件
名类型。当需要指定多种
文件
类型时,各类型之间使用逗号分隔,例如:"PIF
文件
, *.PIF, 批处理
文件
, *.BAT"需要注意的是,该
函数
只是得到一个
文件
名,而并
没有
打开
文件
,需要打开
文件
时,依然需要使用FileOpen()
函数
。 GetCommandDDE() 功能得到DDE客户应用发送的命令。 语法GetCommandDDE ( string ) 参数string:string类型的变量,用于保存DDE客户应用发送的命令返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果string参数的值为NULL, GetCommandDDE()
函数
返回NULL。用法当DDE客户应用向DDE服务器应用发送一条命令时,这个动作将触发DDE服务器应用活动窗口的RemoteExec事件,在这个事件的事件处理程序中,可以使用GetCommandDDE()
函数
得到DDE客户应用发送的命令。 -------------------------------------------------------------------------------- GetCommandDDEOrigin() 功能确定哪一个DDE客户应用向服务器发送了命令。 语法GetCommandDDEOrigin ( applstring ) 参数applstring:string变量,用于保存发送命令的DDE客户应用的名称返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果applstring参数的值为 NULL,GetCommandDDEOrigin()
函数
返回NULL。 -------------------------------------------------------------------------------- GetDataDDE() 功能得到DDE客户应用发送的数据。 语法GetDataDDE ( string ) 参数string:string类型变量,用于保存接收到的数据返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL, GetDataDDE()
函数
返回NULL。 -------------------------------------------------------------------------------- GetDataDDEOrigin()功能确定哪个DDE客户应用发送了数据。 语法GetDataDDEOrigin ( applstring, topicstring, itemstring ) 参数applstring:string类型变量,用于保存客户应用的名称topicstring:string类型变量,用于保存主题(比如,在Excel中,主题可以是REGION.XLS)itemstring:string类型变量,用于保存数据项标识(比如,在Excel中,数据项标识可能是R1C2)返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,GetDataDDEOrigin()
函数
返回NULL。 -------------------------------------------------------------------------------- RespondRemote() 功能向客户端应用指明最近的命令或数据是否已经接收。 语法RespondRemote ( boolean ) 参数boolean:其值为boolean量的逻辑表达式,TRUE表示接收先前收到的命令或数据,FALSE表示不接收先前收到的命令或数据返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果boolean参数的值为NULL,RespondRemote()
函数
返回NULL。 -------------------------------------------------------------------------------- SetDataDDE() 功能向DDE客户应用发送数据。 语法SetDataDDE ( string {, applname, topic, item } ) 参数string:指定要发送到DDE客户应用的数据applname:string类型,可选项,指定接收数据的客户应用的DDE名称topic:string类型,可选项,指定基础数据组item:string类型,可选项,指定基础数据组中的数据项返回值Integer。
函数
执行成功时返回1,发生错误时返回下述值之一:-1
函数
调用的环境不对-2数据未被接收如果任何参数的值为NULL,SetDataDDE()
函数
返回NULL。 -------------------------------------------------------------------------------- StartServerDDE() 功能将当前应用设置为DDE服务器。 语法StartServerDDE ( { windowname, } applname, topic {, item } ) 参数windowname:可选项,指定服务器窗口名,缺省值为当前窗口applname:当前应用的DDE名称topic:string类型,指定DDE客户应用能够引用的基本数据组item:由逗号(,)分隔的一个或多个字符串,指定服务器应用支持的数据项返回值Integer。
函数
执行成功时返回1,发生错误时返回-1,表示当前应用已经设置为DDE服务器。如果任何参数的值为NULL,StartServerDDE()
函数
返回NULL。 -------------------------------------------------------------------------------- StopServerDDE() 功能停止当前应用的DDE服务器功能。执行该
函数
后,发给该应用的任何DDE客户应用请求都将失败。 语法StopServerDDE ( { windowname, } applname, topic ) 参数windowname:可选项,指定要关闭服务器功能的服务器窗口名,缺省值为当前窗口,如果当前应用有多个服务器窗口,那么必须指定该参数applname:当前应用的DDE名称topic:string类型,应该与StartServerDDE()中对应参数相同返回值Integer。
函数
执行成功时返回1,发生错误时返回-1,表示当前应用未曾作为DDE服务器启动。如果任何参数的值为NULL,StopServerDDE()
函数
返回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个定时器。 RegistryDelete() 功能删除Windows
系统
注册库中的一个键或键的某个值。 语法RegistryDelete ( key, valuename ) 参数key:string类型,指定键名,将删除该键或删除该键的某个值valuename:string类型,指定要删除的值的名称。如果想删除键、键的值、以及其下的所有子键,那么将该参数指定为空字符串返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。用法为了唯一地标识某个键,在key参数中,可以从根键开始依次指定各级父键,各键之间使用反斜杠(\)分隔。 -------------------------------------------------------------------------------- RegistryGet() 功能从
系统
注册库中得到指定键的值。 语法RegistryGet ( key, valuename, valuetype, valuevariable ) 参数key:string类型,指定键名valuename:string类型,指定要访问值的名称。每个键可以有一个未命名的值和多个命名的值。要访问未命名的值,把该参数指定为空字符串("")valuetype:RegistryValueType枚举类型,指定值的数据类型。有效取值请参看用法valuevariable:用于保存键值的变量,其数据类型应该与valuetype参数指定的类型相匹配返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果valuevariable的数据类型与valuetype参数指定的类型不匹配,将引发运行错误。 用法valuetype的可能取值为:RegString!以空字符结束的字符串RegExpandString!以空字符结束的字符串,其中包括了对环境变量的非扩展应用RegBinary!二进制数据ReguLong!32位数据ReguLongBigEndian!32位大数据RegLink!Unicode符号链RegMultiString!动态字符串数组为了唯一地标识某个键,在key参数中,可以从根键开始依次指定各级父键,各键之间使用反斜杠(\)分隔。 -------------------------------------------------------------------------------- RegistryKeys() 功能从
系统
注册库中得到指定键的有效子键。 语法RegistryKeys ( key, subkeys ) 参数key:string类型,指定键名subkeys:字符串数组变量,用于保存各子键返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。用法在subkeys参数中可以使用定长数组,也可以使用动态数组。使用动态数组时,数组的上界反映了能够得到的子键个数。当使用定长数组时,其数组元素个数必须足够多,保证能够容纳所有子键,但是,在具体得到子键之前,
没有
办法能够预先知道实际子键个数。为了唯一地标识某个键,在key参数中,可以从根键开始依次指定各级父键,各键之间使用反斜杠(\)分隔。 -------------------------------------------------------------------------------- RegistrySet() 功能在
系统
注册库中设置或创建指定键。 语法RegistrySet ( key, valuename, valuetype, value ) 参数key:string类型,指定键名valuename:string类型,指定要访问值的名称。每个键可以有一个未命名的值和多个命名的值。要访问未命名的值,把该参数指定为空字符串("")。如果注册库中不存在指定值名,该
函数
将创建新的值名valuetype:RegistryValueType枚举类型,指定值的数据类型。有效取值请参看用法value:要设置的值,其数据类型应该与valuetype参数指定的类型相匹配返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果valuevariable的数据类型与valuetype参数指定的类型不匹配,将引发运行错误。用法valuetype的可能取值为:RegString!以空字符结束的字符串RegExpandString!以空字符结束的字符串,其中包括了对环境变量的非扩展应用RegBinary!二进制数据ReguLong!32位数据ReguLongBigEndian!32位大数据RegLink!Unicode符号链RegMultiString!动态字符串数组为了唯一地标识某个键,在key参数中,可以从根键开始依次指定各级父键,各键之间使用反斜杠(\)分隔。 -------------------------------------------------------------------------------- RegistryValues() 功能得到与指定键相关的一组值名。该
函数
在Windows 3.1中无效。 语法RegistryValues ( key, valuename ) 参数key:string类型,指定键名valuename:字符串数组变量,用于保存值名返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。用法在valuename 参数中可以使用定长数组,也可以使用动态数组。使用动态数组时,数组的上界反映了能够得到的值名个数。当使用定长数组时,其数组元素个数必须足够多,保证能够容纳所有值名,但是,在具体得到值名之前,
没有
办法能够预先知道实际值名个数。为了唯一地标识某个键,在key参数中,可以从根键开始依次指定各级父键,各键之间使用反斜杠(\)分隔。 Clipboard() 功能提取或替换Windows
系统
剪贴板的文本内容。 语法Clipboard ( { string } ) 参数string:string类型,可选项,指定要复制到
系统
剪贴板上的文本。如果剪贴板上已有内容的话,该文本将取代剪贴板的当前内容返回值String。
函数
执行成功时,如果剪贴板上包含文本数据,那么
函数
返回剪贴板的当前内容;如果剪贴板上包含非文本数据(比如位图)或不包含任何数据,那么
函数
返回空字符串("")。如果string参数的值为NULL,Clipboard()
函数
返回NULL。用法无论是否指定string参数,Clipboard()都将返回剪贴板的当前内容。当指定string参数时,剪贴板的原有内容被string参数的值取代;省略string参数时,仅仅得到剪贴板的内容。 -------------------------------------------------------------------------------- CommandParm() 功能得到应用程序运行时指定的命令参数。 语法CommandParm ( ) 返回值String。
函数
执行成功时返回应用程序运行时的命令行参数,
函数
执行错误或
没有
命令行参数时
函数
返回空字符串("")。用法命令行参数是应用程序启动时跟在应用程序名称后面的任何参数,比如,在运行窗口中输入了下述命令:MyAppl C:\EMPLOYEE\EMPLIST.TXT那么MyAppl应用程序中使用CommandParm()
函数
得到的命令行参数为:C:\EMPLOYEE\EMPLIST.TXT当应用程序的命令行中包含几个参数时,CommandParm()
函数
作为一个字符串返回所有参数。利用字符串操作
函数
可以分离各参数。在应用对象的Open事件中
没有
必要执行CommandParm()
函数
。此时,Open事件的argument参数中包含了命令行参数。 -------------------------------------------------------------------------------- DoScript() 功能执行AppleScript程序段,该
函数
只在Macintosh平台上有效。 语法DoScript ( script, result ) 参数script:string类型,指定要运行的程序段(script)result:string类型,由AppleScript程序段返回的结果信息或出错信息返回值Integer。返回由AppleScript返回的结果代码。如果任何参数的值为NULL,DoScript()
函数
返回NULL。 -------------------------------------------------------------------------------- GetApplication() 功能得到当前应用对象的句柄,这样你可以查询或设置应用对象的属性(通常用于编写通用代码)。 语法GetApplication ( ) 返回值Application。返回当前应用对象的句柄。 -------------------------------------------------------------------------------- GetEnvironment() 功能得到操作
系统
、处理器、屏幕显示等与
系统
相关的信息。 语法GetEnvironment ( environmentinfo ) 参数environmentinfo:Environment对象名,用于保存
系统
环境信息返回值Integer。
函数
执行成功时返回1,发生错误时返回-1。如果参数environmentinfo的值为NULL,GetEnvironment()
函数
返回NULL。用法当开发交叉平台项目时,利用GetEnvironment()
函数
,应用程序能够得到当前运行的操作
系统
、使用的CPU类型、操作
系统
的版本、屏幕的大小以及颜色数等信息,这些信息的具体表示请参阅本书环境对象(Environment Object)的介绍。 -------------------------------------------------------------------------------- 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()
函数
,让用户能够进行其它操作,特别在循环执行的代码中更应该如此。应用程序执行Fill() 功能建立一个由指定字符串填充的指定长度的字符串。 语法Fill ( chars, n ) 参数chars:string类型,指定用于重复填充的字符串n:long类型,指定由该
函数
返回的字符串的长度返回值String。
函数
执行成功时返回n个字符的字符串,该字符串以参数chars中的字符串重复填充而成。如果参数chars中的字符个数多于n个,那么使用chars字符串的前n个字符填充
函数
返回的字符串;如果参数chars中的字符个数少于n个,那么使用chars字符串反复填充,直到返回的字符串长度达到n为止。如果任何参数的值为NULL,Fill()
函数
返回NULL。 -------------------------------------------------------------------------------- Left() 功能得到字符串左部指定个数的字符。 语法Left ( string, n ) 参数string:string类型,指定要提取子串的字符串n:long类型,指定子串长度返回值String。
函数
执行成功时返回string字符串左边n个字符,发生错误时返回空字符串("")。如果任何参数的值为NULL,Left()
函数
返回NULL。如果n的值大于string字符串的长度,那么Left()
函数
返回整个string字符串,但并不增加其它字符。 -------------------------------------------------------------------------------- LeftTrim() 功能返回指定字符串删除了左部空格后的字符串。 语法LeftTrim ( string ) 参数string:string类型,指定要删除左部空格的字符串返回值String。
函数
执行成功时返回删除了string字符串左部空格的字符串,发生错误时返回空字符串("")。如果任何参数的值为NULL,LeftTrim()
函数
返回NULL。 -------------------------------------------------------------------------------- Len() 功能得到字符串的长度。 语法Len (string) 参数string:string类型变量返回值Long。
函数
执行成功时返回字符串的长度,发生错误时返回-1。如果任何参数的值为NULL,则Len()
函数
返回NULL。 -------------------------------------------------------------------------------- Lower() 功能将字符串中的大写字母转换为小写字母。 语法Lower ( string ) 参数string:要将其中的大写字母转换为小写字母的字符串返回值String。
函数
执行成功时返回将大写字母转换为小写字母后的字符串,发生错误时返回空字符串("")。如果string参数的值为NULL,Lower()
函数
返回NULL。 -------------------------------------------------------------------------------- Match() 功能确定字符串中是否包含指定模式的字符。 语法Match ( string, textpattern ) 参数string:string类型,指定要检查是否匹配指定模式的字符串textpattern:string类型,指定文本匹配模式返回值Boolean:如果字符串string与模式textpattern相匹配,则
函数
返回TRUE,否则返回FALSE。如果指定的匹配模式无效或上述两个参数中的任何一个未曾赋值,那么Match()
函数
返回FALSE。如果任何参数的值为NULL,Match()
函数
返回NULL。 用法textpattern参数的写法与正则表达式十分相似,它由元字符和普通字符组成。每个元字符都有不同的匹配含义,普通字符则与其自身相匹配。
下面
是匹配模式中使用的元字符及其意义: ^指示字符串的开始,例如,^asd表示以asd开头的字符串,字符串asdfgh与模式^asd匹配,而字符串basdfg与模式^asd不匹配。 $指示字符串的结束,例如,red$表示所有以red结束的字符串均与该模式匹配,而redo与模式red$不匹配。 .匹配任意单个字符,例如,^&&$匹配任何六个字符组成的字符串。 []匹配括号中列出的字符,例如,^[ABC]$匹配由一个字符组成的字符串,其值只能是A或B或C。 -与方括号一起,指定匹配字符的范围,例如,^[A-Z]$只匹配那些由一个大写字母组成的字符串。方括号里还可以使用^字符,表示匹配不在指定范围内的任何字符,例如,[^0-9]匹配除数字外的任何字符。 *,+,?这些符号跟在一个字符后面表示该字符可以出现的次数。星号(*)表示可以出现0次或任意次;加号(+)表示可以出现多次,但至少出现一次;问号(?)表示出现0次或一次。例如,A*匹配0个或多个A(
没有
A、A、AA、AAA、AAAA、**);A+匹配1个或多个A(A、AA、AAA、AAAA、**);A?匹配空串或1个A。 \斜杠(\)是转义字符,它去掉特殊字符的特殊含义,比如,模式\$匹配字符$,模式\\匹配字符\。 -------------------------------------------------------------------------------- Mid() 功能取字符串的子串。 语法Mid ( string, start {, length } ) 参数string:string类型,指定要从中提取子串的字符串start:long类型,指定子串第一个字符在string字符串中的位置,第一个位置为1length:long类型,可选项,指定子串的长度返回值String。
函数
执行成功时返回string字符串中从start位置开始、长度为length的子串。如果start参数的值大于string中字符个数,那么Mid()
函数
返回空字符串。如果省略了length参数或length参数的值大于从start开始、string字符串中余下字符的长度,那
PB数据窗口通用查询代码
通用查询,支持多表关联、带参数 只需要传递一个参数datawindow,剩下的一切交给这个
函数
去完成,看看她功能的强大吧 使用此功能调用
方法
: gf_set_query(datawindow add_dw) ad_dw : 被查询数据窗 query.
pbl
: 可带参数查询,必须在被查询数据窗上
定义
一个事件 ue_retrieve, 来执行 retrieve
函数
(带参数或不带参数) 本功能使用sqlca事务对象两次 规则 : 被查询列必须是可视的,并且该数据窗必须有一个以 '列名_t' 命名的text控件 对象 : dw_jzh_query : 查询数据窗 gf_add_where : 为数据窗添加 where 语句 gf_set_query : 查询
函数
w_jzh_query : 查询窗口 如果你想保存上次的查询条件,可以传递一个窗口,你可以自己来
做
,也可以找我帮忙. //版本.2.1 //jzh(jzhaohua@263.net) 2002/05/04 04:02
PB小助手
欢迎使用PB小助手2.0。作为一名PB程序员,您是否有过为了查找某一语句而不辞辛劳地打开一个又一个事件或
函数
,在其脚本中苦苦寻觅的痛苦经历;而为了找到某一变量或
函数
的
定义
,您不得不在错综复杂的对象继承关系中刨根溯源、上下求索。有了PB小助手,这些问题都将迎刃而解。它能帮您在一大堆对象或脚本中迅速找到您想要的,快人一步,胜人一筹! 一、程序功能 1. 选择
PBL
及对象类型,在选中的对象脚本中搜索指定字符串; 2. 选择
PBL
及对象类型,对选中的对象进行名称匹配,显示名称中包含某字串的所有对象; 3. 选择
PBL
列表,查找其中的重复对象; 4. 在检索结果中点右键显示某对象的继承关系,包括祖先及其下的子孙; 5. 列出所有对象的属性,左键点击标题栏可进行排序,缺省时按最后修改日期及
PBL
库名称排序。 2.1版新增功能 1 在
PBL
列表中一次加入目录或多个
PBL
文件
2 搜索应用中的无用对象 本工具使用时需运行库PBDWE60.DLL,PBVM60.dll支持,请到http://pbfind.51.net/pbfindit.htm下载.
pbfind3_5_9.rar_insert into_pb助手_powerbuilder
系统
_自
定义
欢迎使用PB小助手。 作为一名PB程序员,您是否有过为了查找某一语句而不辞辛劳地打 开一个又一个事件或
函数
,在其脚本中苦苦寻觅的痛苦经历;而为了找 到某一变量或
函数
的
定义
,您不得不在错综复杂的对象继承关系中刨根 溯源、上下求索。有了PB小助手,这些问题都将迎刃而解。它能帮您在 一大堆对象或脚本中迅速找到您想要的,快人一步,胜人一筹! 主要功能(详情见帮助): * 对象检索。在PB应用中搜索名称中包含指定字符串的对象。 * 脚本检索。在PB应用源码中搜索指定字符串。 * 辅助注释。按自
定义
模板格式插入代码注释。 * 代码美化。按缺省的缩进格式对代码进行整理美化。 * PB工具栏。自动集成到PB IDE工具栏,操作更方便快捷。 * 浮动窗口。工具条窗口显示,最小化至
系统
托盘。 * 代码统计。对选定的
PBL
库进行对象及代码行数统计。 * 代码浏览。PowerScript语法高亮显示。 * 重复对象检索。 * 无用对象检索。 * 对象属性列表。 * 对象继承关系。 本软件使用PowerBuilder开发,使用时需PB运行库支持。如果您有
PowerBuilder
1,075
社区成员
66,437
社区内容
发帖
与我相关
我的任务
PowerBuilder
PowerBuilder 相关问题讨论
复制链接
扫一扫
分享
社区描述
PowerBuilder 相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章