logo资料库

XE UniGUI开发的代码处理各种管理系统开发碰到的集锦.doc

第1页 / 共66页
第2页 / 共66页
第3页 / 共66页
第4页 / 共66页
第5页 / 共66页
第6页 / 共66页
第7页 / 共66页
第8页 / 共66页
资料共66页,剩余部分请下载后查看
1. 事件中的代码在服务器端和客户端,哪一端执行?
2. 为什么UniGUI控件在IE中显示的字体会变小、模糊?
3. 在浏览器端不能使用ShowMessage()
4. 修改工程文件,使exe程序编译成dll
5. UniGUI开发的dll如何发布
6. uniGUI0.94 以EXE形式发布程序的布署方法
7. uniGUI执行程序部署有3种形式
8. 在UniGUI里使用ADO的设置
9. MainModule怎样得到js变量的值
10. TUniServerModule和TUniMainModule这两模块有何区别
11. MainModule里一般放什么,ServerModule一般放什么?
12. 主窗体的标题怎么去掉
13. 用ExtEvent打开链接和下载文件
14. WebApplication显示对话框
15. Uni中的UniChart的Series增删
16. 怎样给每一个在线用户建立一套变量,在用户断开后立即清除
17. TUniHiddenPanel的作用
18. UniDBGrid如何转为Excel供下载?
19. uniGUI实现Excel的导出
20. UniDBGrid Excel
21. Excel
22. 文件转档与下载
23. Send File()应用
24. UniGUI的Canvas使用
25. 动态生成TTabSheet or TUniTabSheet
26. UniGUI中如果获得Session情况
27. UniGUI Func 之 Sessions
28. uniGUI 通过SessionList操作另外的登录用户
29. UniGui中如何监听Session的开始与结束
30. UniGUI如何禁止关闭新窗口
31. UniGUI中控件类名的变化
32. 再议UniGUI中使用Grid+Rport报表控件(推荐此方法)
33. UniGUI的布局面板控件 TUniRegionPanel
34. UniGUI使用报表Grid+Report的方法之一(静态调用)
35. UniGUI使用报表Grid+Report的方法之二(动态调用)
36. UniGUI中Cookies使用中文汉字的方法
37. UniGUI如何实现压缩传输数据?
38. UniGUI的ShowModal
39. UniGUI 前台用户如何在软件中点击一个按钮打开浏览器并打开地址?
40. How To Make Caption In UniGUI?
41. 在UniGUI的UniHtmlFrame中不能使用的HTML标签
42. 利用UniGUI中的TUniPageControl实现多页面
43. UniGUI TreeView处理
44. UniGUI 设置超时
45. UniGUI如何实现登陆页面
46. UniGUI如何实现超链接
47. 从ASP网站登录到UniGUI中
48. UniGUI数据库初始化要放到MainModule里
49. UniGUI Cookies
50. Form Inheritance
51. UniGUI组件中的Client JavaScript Delphi组件之间的操作
52. JS能取Delphi控件的值?
53. 写js的注意
54. unigui结合JS方法记录
55. JS,Jquery获取各种屏幕的宽度和高度
56. uniGUI动态建立Form及释放
57. uniGUI经验两则 uniTimer uniHtmlFrame
58. uniGUI使用百度地图api进行标注
59. fileupload的问题
60. unigui unidbgrid显示列的合计值
61. UniGui中设置uniEdit控件的fieldLabel ,emptyText等Extjs属性
62. uniGUI用Grid++Report报表插件设计保存报表(For unigui ver:0.95
63. UniGUI的TUniLoginForm窗口自定义背景色
64. uniGUI显示Warning: Form must be shown after it is c
65.
66. 调用WebService
67. TUniTreeView的CheckBox
68. 通过URL来获取相关参数
69. uniDBGrid实行多选表格行
70.
71. 对UniDBGrid的单元格操作
72. DBGrid多选后计算问题(是否可以作为参考?)
73. UniDBGrid选择字段Boolean处理
74. UniDBGrid自带MultiSelect无法使用【最新版可以】
75. 如何打开URL,让系统看起来舒服点
76. 如何修改UniGUI下的中文信息
77. 如何实现UniDBGrid下字段显示按钮
78. 如何实现UniDBGrid下字段自动换行
79. 如何结合kbmMW
80. 如何规避浏览器访问时ajax异常
81. 事件操作时,如果出现等待效果
82. 登录页面和主页面切换之间碰到的异常
83. 让Page中切换Tab效果稍微好一点
84. UniImage可以嵌入PNG图片
85. UniImage自带导入PNG图片的问题
UniGUI 集合说明 目 录 1. 事件中的代码在服务器端和客户端,哪一端执行? ............................................................3 2. 为什么 UniGUI 控件在 IE 中显示的字体会变小、模糊? .....................................................3 3. 在浏览器端不能使用 ShowMessage()..................................................................................... 5 4. 修改工程文件,使 exe 程序编译成 dll................................................................................... 6 5. UniGUI 开发的 dll 如何发布..................................................................................................... 7 6. uniGUI0.94 以 EXE 形式发布程序的布署方法 ..................................................................... 13 7. uniGUI 执行程序部署有 3 种形式 ..........................................................................................14 8. 在 UniGUI 里使用 ADO 的设置 ...............................................................................................16 9. MainModule 怎样得到 js 变量的值 ....................................................................................... 16 TUniServerModule 和 TUniMainModule 这两模块有何区别 ....................................... 16 10. MainModule 里一般放什么,ServerModule 一般放什么?....................................... 17 11. 主窗体的标题怎么去掉 ..................................................................................................17 12. 13. 用 ExtEvent 打开链接和下载文件..................................................................................17 WebApplication 显示对话框 ...........................................................................................17 14. Uni 中的 UniChart 的 Series 增删 ...................................................................................17 15. 16. 怎样给每一个在线用户建立一套变量,在用户断开后立即清除............................. 18 TUniHiddenPanel 的作用 .................................................................................................18 17. UniDBGrid 如何转为 Excel 供下载? ............................................................................. 18 18. 19. uniGUI 实现 Excel 的导出............................................................................................... 18 UniDBGrid Excel 文件下载 ...............................................................................................19 20. Excel 文件导入系统 .........................................................................................................21 21. 22. 文件转档与下载..............................................................................................................21 Send File()应用 .................................................................................................................21 23. UniGUI 的 Canvas 使用 ....................................................................................................22 24. 25. 动态生成 TTabSheet or TUniTabSheet ............................................................................ 22 UniGUI 中如果获得 Session 情况 ...................................................................................23 26. UniGUI Func 之 Sessions ................................................................................................23 27. uniGUI 通过 SessionList 操作另外的登录用户.............................................................24 28. 29. UniGui 中如何监听 Session 的开始与结束 ................................................................... 25 UniGUI 如何禁止关闭新窗口......................................................................................... 27 30. UniGUI 中控件类名的变化 ............................................................................................. 27 31. 32. 再议 UniGUI 中使用 Grid+Rport 报表控件(推荐此方法)............................................. 28 UniGUI 的布局面板控件 TUniRegionPanel ................................................................... 28 33. UniGUI 使用报表 Grid+Report 的方法之一(静态调用)................................................ 28 34. 35. UniGUI 使用报表 Grid+Report 的方法之二(动态调用)................................................ 28 UniGUI 中 Cookies 使用中文汉字的方法...................................................................... 28 36. 37. UniGUI 如何实现压缩传输数据?................................................................................. 29
38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. UniGUI 的 ShowModal.....................................................................................................29 UniGUI 前台用户如何在软件中点击一个按钮打开浏览器并打开地址?............... 29 How To Make Caption In UniGUI?..................................................................................30 在 UniGUI 的 UniHtmlFrame 中不能使用的 HTML 标签 .............................................. 30 利用 UniGUI 中的 TUniPageControl 实现多页面...........................................................30 UniGUI TreeView 处理 ..................................................................................................... 31 UniGUI 设置超时 ............................................................................................................ 31 UniGUI 如何实现登陆页面 ............................................................................................. 31 UniGUI 如何实现超链接................................................................................................. 32 从 ASP 网站登录到 UniGUI 中........................................................................................32 UniGUI 数据库初始化要放到 MainModule 里..............................................................32 UniGUI Cookies.................................................................................................................32 Form Inheritance.............................................................................................................. 33 UniGUI 组件中的 Client JavaScript Delphi 组件之间的操作 .........................................33 JS 能取 Delphi 控件的值?............................................................................................. 34 写 js 的注意 ......................................................................................................................34 unigui 结合 JS 方法记录 ..................................................................................................34 JS,Jquery 获取各种屏幕的宽度和高度..........................................................................35 uniGUI 动态建立 Form 及释放 ....................................................................................... 37 uniGUI 经验两则 uniTimer uniHtmlFrame.....................................................................37 uniGUI 使用百度地图 api 进行标注 ...............................................................................37 fileupload 的问题.............................................................................................................38 unigui unidbgrid 显示列的合计值 .................................................................................. 38 UniGui 中设置 uniEdit 控件的 fieldLabel ,emptyText 等 Extjs 属性..............................40 uniGUI 用 Grid++Report 报表插件设计保存报表(For unigui ver:0.95.0.1045)............40 UniGUI 的 TUniLoginForm 窗口自定义背景色 .............................................................. 46 uniGUI 显示 Warning: Form must be shown after it is created 的解决办法.................46 界面上的快捷方式 ..........................................................................................................46 调用 WebService ..............................................................................................................47 TUniTreeView 的 CheckBox..............................................................................................49 通过 URL 来获取相关参数............................................................................................. 52 uniDBGrid 实行多选表格行............................................................................................ 52 UniDBGrid 增加显示记录数的 label 及隐藏 refresh 按钮 ............................................56 对 UniDBGrid 的单元格操作 ...........................................................................................57 DBGrid 多选后计算问题(是否可以作为参考?) .....................................................59 UniDBGrid 选择字段 Boolean 处理 ................................................................................ 59 UniDBGrid 自带 MultiSelect 无法使用【最新版可以】...............................................60 如何打开 URL,让系统看起来舒服点 .......................................................................... 61 如何修改 UniGUI 下的中文信息 .................................................................................... 62 如何实现 UniDBGrid 下字段显示按钮...........................................................................62 如何实现 UniDBGrid 下字段自动换行...........................................................................62 如何结合 kbmMW...........................................................................................................63 如何规避浏览器访问时 ajax 异常 ................................................................................. 63 事件操作时,如果出现等待效果 ..................................................................................63
82. 83. 84. 85. 登录页面和主页面切换之间碰到的异常......................................................................63 让 Page 中切换 Tab 效果稍微好一点 ............................................................................ 64 UniImage 可以嵌入 PNG 图片 ........................................................................................ 64 UniImage 自带导入 PNG 图片的问题 ............................................................................65 网址:http://www.docin.com/p-750840424.html 这个文档中的话题与解决方案,几乎全部来自 UniGUI 的交流群,群中活跃的 BDS2007、 cmj 等人,给了众多使用 UniGUI 的人很多帮助。 这个文档,主要是学习与方便后来之人,文档积累的起因是严肃而正式的,因为每个人 都有学习的需求;但文档的所谓版权、著述,我希望它是有公益色彩的东西,如有哪位不希 望解决方案不出现在这里,请您告知。 此外,就是期待大家都能把自己的一些经验,给指导和帮助后来人的东西,在不影响您 正常工作与其他事情的前提下,奉献出来。至于正确与错误、高超或低下,无关大体。 1. 事件中的代码在服务器端和客户端,哪一端执行? 代码如下: for i:=0 to 20 do begin if Frm[i]<>nil then if Frm[I].Name=ProCaption then begin BaesFrame := Frm[i]; IsOpen := True; Break; end; end; if IsOpen then exit; 为什么这段代码是在服务器端执行,而不是在客户端执行呢? 解答: UniGUI 的运行机制就是除非你在 ClientEvents 里的东西,其他都是要由 UniGUI 通过后台程序执行完成后解析成 js 发回客户端浏览器显示。 2. 为什么 UniGUI 控件在 IE 中显示的字体会变小、模糊? 字体修改 UniSessionModule 的 CustomCSS 的内容:
/* ---------------------------修改 Ext CSS -------------------------- */ /* Ext 2.0 */ .x-window-footer { position: relative; top: 0; right: 0; } .x-tab-strip SPAN.x-tab-strip-text { font-size: 13px; } .x-panel-header { font-size: 13px; } .x-tree-node { font-size: 13px; } .x-grid3-hd-row TD { font-size: 13px; } .x-grid3-row TD { font-size: 13px; LINE-HEIGHT: 18px; } .x-tip .x-tip-bd { font-size: 13px; } .x-tip h3 { font-size: 13px; } .x-tip .x-tip-bd-inner { font-size: 13px; }
.x-panel-t1 .x-panel-header { FONT: normal 13px tahoma,arial,verdana,sans-serif; } .x-form-field { FONT: 13px tahoma,arial,helvetica,sans-serif; } .x-small-editor .x-form-field { FONT: 13px tahoma,arial,helvetica,sans-serif; } .x-combo-list-item { FONT: 13px tahoma,arial,helvetica,sans-serif; } .x-btn button,x-toolbar .x-item { FONT: 13px tahoma,arial,sans-serif; } .x-menu-list-item { FONT: 13px tahoma,arial,sans-serif; } .x-window-t1 .x-window-header { FONT: bold 13px tahoma,arial,verdana,sans-serif; } .x-layout-split-west .x-layout-mini { BACKGROUND-IMAGE: url(../images/mini-left.jpg); } .x-form-text { Margin-top:1px; }/* the textField missing bottom line */ .x-form-item { FONT: 13px tahoma,arial,helvetica,sans-serif; } .x-grid-group-hd DIV { FONT: bold 13px tahoma,arial,helvetica,sans-serif; } /*按钮字体大小 Add by extjs.org.cn */ .x-btn-text { Font: 12px tahoma,arial,sans-serif; } /* END */ 3. 在浏览器端不能使用 ShowMessage() Function ShowMsg(AskString: String): Boolean;
begin if MainForm.WebMode then //must uses UniGUIApplication UniSession.AddJS(‘alert(‘’’+AskString+’’’);’) else ShowMessage(AskString); end; 在浏览器执行不可用 ShowMessage 4. 修改工程文件,使 exe 程序编译成 dll ProjectView Source {$define UniGUI_VCL} //Comment out this line to turn this project into an ISAPI module’ {$ifndef UniGUI_VCL} library {$else} program {$endif} Project1; uses {$ifndef UniGUI_VCL} uniGUIISAPI, {$else} Forms, {$endif} ServerModule in 'ServerModule.pas' {UniServerModule: TUniGUIServerModule}, MainModule in 'MainModule.pas' {UniMainModule: TUniGUIMainModule}, Main in 'Main.pas' {MainForm: TUniForm}; {$R *.res} {$ifndef UniGUI_VCL} exports GetExtensionVersion, HttpExtensionProc, TerminateExtension; {$else} begin
Application.Initialize; TUniServerModule.Create(Application); Application.CreateForm(TQFkbmMWClientForm, QFkbmMWClientForm); Application.Run; {$endif} end. 在{$define UniGUI_VCL} 改成 //{$define UniGUI_VCL} 重新编译  dll 5. UniGUI 开发的 dll 如何发布 在 IIS 里面设置相关属性,并且 default 里设置这个 dll,这样可以确保 URL 访问只需要 IP:Port, 看不到 DLL。也可以单独设置一个 index.html 重定向到 dll。 1) 连接池设置,如下图: 2) 连接池高级设置,如下图:
分享到:
收藏