随笔分类 -  PB

摘要:DataWindow值获取例1:读取第一行第二个字段单元格的数值dw_1.object.DATA[1,2]例2:读取name字段第二行数值dw_1.object.name[2]例3:获取name字段所有数据(列)string stu_name[]stu_name[]=dw_1.object.name... 阅读全文
posted @ 2014-05-10 10:05 木子_lishk 阅读(868) 评论(0) 推荐(0)
摘要:弹出上下文菜单m_Main m_menu_popm_menu_pop =create m_Maininteger Px,Py //设置弹出菜单位置Px = this.x+ PointerX()Py = this.y +PointerY()m_menu_pop.PopMenu(Px,Py)destro... 阅读全文
posted @ 2014-05-10 10:00 木子_lishk 阅读(278) 评论(0) 推荐(0)
摘要:首先需将要更改的datawindow关闭,然后选中该datawindow,右键——》edit source,可以看到 processing=value如果value为 0, 则为freeForm格式,如果为1,则为grid 格式。如果是要新建一个一模一样的,可以【菜单】-【另存为】 阅读全文
posted @ 2014-05-10 09:55 木子_lishk 阅读(404) 评论(0) 推荐(0)
摘要:postEvent:等待响应triggerEvent:即时响应比如:有按钮 cb_1 ,cb_1的clicked事件代码如下:messagebox('','first')this.postevent('ue_1') // 【1】//或者:this.triggerEvent('ue_1') /... 阅读全文
posted @ 2014-05-10 09:52 木子_lishk 阅读(352) 评论(0) 推荐(0)
摘要:datetime dtsetnull(dt)dwo.object.date[1]=dt 阅读全文
posted @ 2014-05-10 09:49 木子_lishk 阅读(245) 评论(0) 推荐(0)
摘要:string ls_all,ls_1,ls_2,ls_3ls_all = "ls_1;ls_2;ls_3"ls_1 = mid(ls_all,1,pos(ls_all,';') -1)ls_3 = right(ls_all,pos(reverse(ls_all),';') -1)ls_2 = mid... 阅读全文
posted @ 2014-05-10 09:47 木子_lishk 阅读(106) 评论(0) 推荐(0)
摘要:关于ID生成注:today()和now()是date类型,如需转换,可用datetime(today(())和datetime(now())一般用:SELECTsysdateINTO :ldt_sysDateTime FROMDUAL获取时间。//获取的是服务器时间,防止本机时间错误ls_Curre... 阅读全文
posted @ 2014-05-10 09:45 木子_lishk 阅读(153) 评论(0) 推荐(0)
摘要:getFocus事件中写: this.setrowfocusindicator(Hand!)函数SetRowFocusIndicaTor可以给当前行指定的位置上设置指定的标志,函数的语法格式如下:dw_1.SetRowFocusIndicaTor(focusindiacaTor{,xlocation... 阅读全文
posted @ 2014-05-10 09:37 木子_lishk 阅读(346) 评论(0) 推荐(0)
摘要:Subroutine keybd_event(uint bVk,uint bScan,long dwFlags,long dwExtraInfo ) library "user32.dll"//貌似不用这个也可以自定义 pbm_dwnkey事件 【 注意:不是pbm_keydown】choose c... 阅读全文
posted @ 2014-05-10 09:35 木子_lishk 阅读(213) 评论(0) 推荐(0)
摘要:在dataobject菜单rows--->supressrepeatingvalues找到要合并的列缺陷:不能实现居中的功能! 阅读全文
posted @ 2014-05-10 09:34 木子_lishk 阅读(403) 评论(0) 推荐(0)
摘要:复制文件(上传至共享文件夹)功能:复制文件。也可以指定是否覆盖同名的目标文件。语法:FileCopy ( sourcefile , targetfile {, replace})参数:sourcefile:string 类型,指定要复制文件的名称(源文件名称);targetfile:string 类... 阅读全文
posted @ 2014-05-10 09:33 木子_lishk 阅读(689) 评论(0) 推荐(0)
摘要:run("rundll32.exe shimgvw.dll,ImageView_Fullscreen" + pictureName) 阅读全文
posted @ 2014-05-10 09:30 木子_lishk 阅读(193) 评论(0) 推荐(0)
摘要:string ls_msgchoose case error.numbercase 1//by zerols_msg = "发生被0除错误"case 2//2 Null object referencels_msg = "空对象引用"ls_msg = "空对象引用"case 3//3 Array boundary exceededls_msg = "数组越界"case 4//4 Enumerated value is out of range for functionls_msg = "枚举值超出函数的范 阅读全文
posted @ 2014-01-17 14:04 木子_lishk 阅读(988) 评论(0) 推荐(0)
摘要:用法示例:如果要禁止使用中键(滚动轮),则在Window窗体(或DataWindow数据窗口)中的other事件里写:if message.number = 522 then return 1在此附上其他一些message.number的表示含义:512: 鼠标移动 //window无效513: 左键按下//window无效514: 左键释放//window无效515: 左键双击//window无效516: 右键按下//window无效517: 右键释放518: 右键双击519: 中键按下(3键鼠标 Only)520: 中键释放(3键鼠标 Only)521: 中键双击(3键鼠标 Only)52 阅读全文
posted @ 2013-12-18 22:40 木子_lishk 阅读(562) 评论(0) 推荐(0)
摘要:在使用窗口时,可能将窗口的标题栏去掉,此时可以通过按住鼠标左键不放拖动窗体,只需在该窗体的"mousedown"事件中编写以下一行代码即可:send(handle(this),274,61458,0) 阅读全文
posted @ 2013-12-18 22:05 木子_lishk 阅读(531) 评论(0) 推荐(0)
摘要:在"Font"标签的"Text Color"属性中,输入如下表达式:IF (column_name column_name.Original, RGB(255, 0, 0), RGB(0, 0, 0))。如下图所示:在这个条件中,如果此列已改变,则显示红色字体,否则显示黑色字体。这个表达式主要用column_name column_name.Original比较当前列的值和原始列的值是否相同来达到判断的目的。效果如下:参考自:http://blog.chinaunix.net/uid-20586802-id-1919405.html 阅读全文
posted @ 2013-12-16 23:01 木子_lishk 阅读(444) 评论(0) 推荐(0)
摘要:设置DataWindow 的奇偶行颜色显示不同,不仅仅可以使你的应用程序更显专业性,并使数据的可读性增强。先调出你需要改动的DataWindow,在Detail band按下右键选择Properties,选择“General”标签,在点击“color”属性右边的符号,如下图所示:弹出以下窗口:在“Expression"中输入以下内容: IF(MOD(GETROW(),2)=0,RGB(192, 192, 192), RGB(255, 255, 255))。效果如下图所示(具体颜色的设置可以自己更改):第一个RGB()是偶行的颜色设置,第二个RGB是奇行的颜色设置。参考自:http:/ 阅读全文
posted @ 2013-12-16 22:23 木子_lishk 阅读(353) 评论(0) 推荐(0)
摘要:当调用Retrieve函数,PowerBuilder会自动清除原有DataWindow的数据,然后Retrieve数据。在Datawindow RetrieveStart事件中,在脚本script中写入“Return 2”,这样PowerBuilder就不会清除原有数据而是追加新数据。如下所示:参考自:http://blog.chinaunix.net/uid-20586802-id-1919405.html 阅读全文
posted @ 2013-12-16 22:08 木子_lishk 阅读(358) 评论(0) 推荐(0)
摘要:在PowerBuilder应用程序的开发过程中, 使用DataWindow时, 经常会遇到某列的数据太长, 不能同时全部显示的情况. 若采用自动水平滚动, 操作起来又不够简便. 下面介绍一种方法, 实现列数据多行显示, 即实现列数据的自动折行.具体步骤如下:1) 在DataWindow Painter中打开此DataWindow.2) 在需设定自动折行的列上双击鼠标, 弹开此列的属性窗口.3) 选择Position标签, 选中Autosize Height 多选框.4) 选择Edit标签, 不选中Auto Horz Scroll多选框.5) 点中Detail Band (即写有Detail的灰 阅读全文
posted @ 2013-12-16 21:36 木子_lishk 阅读(335) 评论(0) 推荐(0)
摘要:若想在DataWindow列数值只能追加而不能修改,可以在dataWindow表格设计中,点击“Header"中的所要设置不能修改的列,如果要设置所有列都不能修改,则分别设置。如下图所示:假如要设置“学号”不可更改,可以点击”学号“列,选中右边”General“标签,有一个"Protect”属性,设为“If(IsRowNew(),0,1)”即可。参考自:http://blog.chinaunix.net/uid-20586802-id-1919405.html 阅读全文
posted @ 2013-12-16 20:45 木子_lishk 阅读(244) 评论(0) 推荐(0)