摘要: 2008年03月31日 星期一 下午 03:10 我们在文字处理过程中,常常在打印前要预览,以便控制打印效果,特别在数据打印中要有选择地打印页面,更需要预览。PowerBuilder提供了程序开发过程中的数据打印预览,下面介绍在程序应用中实现打印预览通用方法。打印预览窗口w_preview一、下面讲述创建上述窗口的实现过程:1.创建一个新窗口W_preview,设置该窗口的类型(WindowType)为child!2.在主窗口中按示意图放置各个控件:Gb_1:用于显示的控件按钮,放在窗口最上面gb_2:用于显示纵向和横向打印的收音机按钮(rb_1,rb_2),放在窗口的右部dw_prt:用于. 阅读全文
posted @ 2010-11-12 19:09 lenya 阅读(1258) 评论(0) 推荐(1) 编辑
摘要: //=============wf_get_col_maxvalue=============////any wf_get_col_maxvalue (datawindow adw_data, string as_col)//adw_data:要比较列最大值的datawindow//as_col:要比较的列//return any lany_max//=======================================//string ls_coltypeany lany_maxdatastore lds_templds_temp = create datastore//lds_te 阅读全文
posted @ 2010-11-12 19:07 lenya 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 问:请问如何限制应用程序只运行一次呢? 答:利用Windows的API函数FindWindow()、BringWindowToTop()、ShowWindow()可实现上述功能。①定义API: Funtion ulong FindWindowA( ulong winhandle, string wintitle ) Library "user32" Funtion uLong BringWindowToTop( ulong hwnd ) Library "user32" Funtion uLong ShowWindow( ulong winhandle, 阅读全文
posted @ 2010-11-12 19:03 lenya 阅读(197) 评论(0) 推荐(0) 编辑
摘要: $PBExportHeader$gf_dynamic_create_dwchild.srf$PBExportComments$动态创建下拉Datawindowchildglobal type gf_dynamic_create_dwchild from function_objectend typeforward prototypesglobal function integer gf_dynamic_create_dwchild (datawindow adw_dw, string as_colname, string as_sql)end prototypesglobal function 阅读全文
posted @ 2010-11-12 19:01 lenya 阅读(136) 评论(0) 推荐(0) 编辑
摘要: //检查列名是否有效as_colname //列名string ls_objectsls_objects= dw_2.describe("datawindow.objects")ls_objects= '~t' + ls + '~t'if pos(ls,'~t' + trim(as_colname) + '~t' ) > 0 then messagebox('','true')end if//v_e_oxddnr_产品编号 阅读全文
posted @ 2010-11-12 19:00 lenya 阅读(119) 评论(0) 推荐(0) 编辑
摘要: string ls_sql,ls_syntax,ls_errls_sql = "select * from yd_sys_user"ls_syntax = sqlca.syntaxfromsql(ls_sql,"style(type= grid)",ls_err)if len(ls_err) > 0 then messagebox('',ls_err)else dw_1.create(ls_syntax,ls_err) if len(ls_err) > 0 then messagebox('err',ls_er 阅读全文
posted @ 2010-11-12 19:00 lenya 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 数据窗口揭秘:未公开的数据窗口事件 (作者:Mark Brown) 到目前为止,PB的数据窗口控件仍是PB众多控件中功能最强大,最复杂的控件。 数据窗口固有的行为 大家对数据窗口固有的行为都很熟悉。不知道你发现没有,几乎不可能覆盖数据窗口固有的行为。它有自己的一套! 事实确实如此,数据窗口控件确实有自己的固有行为。数据窗口控件是一个完全独立的子窗口,它可以显示信息,可以独立于父窗口处理Windows消息。然而,与别的并不复杂的控件(例如:commandbuttons,statictexts,singlelineedits)一样,数据窗口控件通过"Notification". 阅读全文
posted @ 2010-11-12 18:58 lenya 阅读(1080) 评论(0) 推荐(0) 编辑
摘要: ============备份数据库//备份数据库SQLCA.AutoCommit = TRUE//将数据库备份到文件ls_style = "USE " + as_databasenameEXECUTE IMMEDIATE : ls_style;ls_style = "BACKUP DATABASE " + as_databasename + " TO disk = '" + as_path + "' WITH FORMAT, NAME = 'Full Backup'" EXECUTE 阅读全文
posted @ 2010-11-12 18:56 lenya 阅读(480) 评论(0) 推荐(0) 编辑
摘要: //===========================================================================//函数功能:返回计算表达式的值//参数: string thestr 计算表达式,如 2 * (3+5)//返回值:string retVal 计算表达式的结果值,如 2 * (3+5)的结果值为 16// 如果是一个不正确的表达式,则返回 false.//===========================================================================//... 阅读全文
posted @ 2010-11-12 18:52 lenya 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 如何在 PB 中实现无标题可拖动的窗口当鼠标拖动时Windows 首先会向鼠标下的窗口发送一个 wm_nchittest 消息,窗口收到这个消息后再由窗口的消息处理函数进行处理,消息处理函数将 会返回一个整数表示鼠标正处于窗口的什么部位。大家只需要知道的是处理函数 返回2,表示鼠标正处于窗口的标题栏上。根据这一点,我们只要截获这条消息, 然后直接返回2。这样不管鼠标真正位于窗口的什 么部位,WINDOWS 一律认为鼠标位于标题栏上。因此,用户自然可以拖动窗口。 下面是具体的步骤:1 为窗口定义用户自定义事件Event Name: ue_nchittest Event ID: pbm_nchit 阅读全文
posted @ 2010-11-12 18:52 lenya 阅读(469) 评论(0) 推荐(0) 编辑
摘要: integer li_rnstring ls_filepath,ls_filename,ls_filetypels_filetype = "Excel文件(*.xls),*.xls,文本文件(*.txt),*.txt,网页文件(*.html),*.html,所有文件(*.*),*.*"goto cnncnn:li_rn = getfilesavename ("保存文件",ls_filepath,ls_filename,'excel文件',ls_filetype)if li_rn = 0 then return 0if fileexists 阅读全文
posted @ 2010-11-12 18:51 lenya 阅读(194) 评论(0) 推荐(0) 编辑
摘要: long custom[ ]integer li_colorcustom[1]=rgb(255, 200, 1345678)custom[2]=8344736long ll_select_color = 255 //选择的颜色if li_color = ChooseColor( ll_select_color, custom [ ] ) = 1 then ...end if 阅读全文
posted @ 2010-11-12 18:50 lenya 阅读(116) 评论(0) 推荐(0) 编辑
摘要: li_file_no = FileOpen("system_error.log",LineMode!,Write!,Shared!,Append!)if li_file_no = 0 then Messagebox("出错信息","不能打开系统出错日志文件!",Exclamation!)else if FileWrite(li_file_no, "~r~n" + & "----------------------------------------------------------------& 阅读全文
posted @ 2010-11-12 18:49 lenya 阅读(420) 评论(0) 推荐(0) 编辑