概述
- Folder文件夹功能
可以实现位置在前三项的项目排序,而非特定项目排序。
可以实现拖动列,隐藏列,显示列,拉宽列,拉窄列 - 加载实现Folder功能的pll
从FTP上的au/11.5.0/resource/ 目录下载APPFLDR.pll到自己电脑上的某个位置,然后加载该pll,操作方法:选中表单的Attached Libraries节点,然后点击左侧的加号工具,也就是Create按钮,会弹出对话框,选择刚才下载的APPFLDR.pll,然后点击Attach按钮,在弹出的警告对话框中选择Yes,添加成功后就会出现APPFLDR。 - 继承的Window、画布Canvas与块Block的建立
- 将APPSTAND.fmb中的三个以FOLDER开头窗口【FOLDER_SORT_DATA】、【FOLDER_TOOLS】、【FOLDER_AUTOSIZE】拖动到自己Forms的Windows节点,在弹出的对话框中选择Subclass。
- 将APPSTAND.fmb中的三个以FOLDER开头画布【FOLDER_SORT_DATA】、【FOLDER_TOOLS】、【FOLDER_AUTOSIZE】拖动到自己Forms的Canvas节点,在弹出的对话框中选择Subclass。
- 将APPSTAND.fmb中的两个以FOLDER开头块【FOLDER_CONTROL】、【FOLDER_TOOLS】拖动到自己Forms的Block节点,在弹出的对话框中选择Subclass。
将名称为STANDARD_FOLDER的Object Groups 通过Subclass的方式移植到自己的表单中。 创建两个画布【一个继承canvas,一个继承CANVAS_STACKED】后者用来放使用folder控制的项目,属性Show Horizontal Scroll Bar设置为Yes,属性Window设置为主要窗口canvas画布,设置Viewport ,还有一个值得注意的地方就是其在Canvas节点的顺序要放到先前建立的内容画布MAIN的下面。 为STACKED文件夹块上所有要显示给用户看的项设置相应的属性。
- 所有的项都应该设置Subclass Information属性(一般设置为TEXT_ITEM或者TEXT_ITEM_DISPLAY_ONLY)
- 为该文件夹块增加一个项,名称为SWITCHER,Item Type属性值为Text Item,Subclass Information属性值设置为SWITCHER
- 属性CANVAS要设置为内容画布MAIN,还有就是该项目要是该块的第一个项目,也就是放到项目CURRENT_RECORD_INDICATOR的上面。
- 还要设置该文件夹块的Show Scroll Bar属性值为Yes,Scroll Bar Orientation属性值为Vertical,Scroll Bar Canvas为内容画布MAIN。
- 文件夹块中的项目SWITCHER 增加WHEN-NEW-ITEM-INSTANCE触发器,Execution Hierarchy属性为Override,代码为app_folder_move_cursor('1');
- 文件夹块中的项目CURRENT_RECORD_INDICATOR 增加WHEN-NEW-ITEM-INSTANCE触发器,Execution Hierarchy属性为Override,代码为app_folder_move_cursor('1');
- 文件夹块增加触发器WHEN-NEW-BLOCK-INSTANCE,Execution Hierarchy属性为Before,代码为app_folder.event('WHEN-NEW-BLOCK-INSTANCE');
- 文件夹块增加触发器KEY-NEXT-ITEM,Fire in Enter-Query Mode属性为Yes,代码为app_folder.event('KEY-NEXT-ITEM');
- 文件夹块增加触发器KEY-PREV-ITEM,Fire in Enter-Query Mode属性为Yes,代码为app_folder.event('KEY-PREV-ITEM');
- 文件夹块增加触发器PRE-BLOCK,Execution Hierarchy属性为Before,代码为app_folder.event('PRE-BLOCK');
- 文件夹块增加触发器POST-BLOCK,Execution Hierarchy属性为Before,代码为app_folder.event('POST-BLOCK');
- 文件夹块增加触发器PRE-QUERY,Execution Hierarchy属性为Before,代码为app_folder.event('PRE-QUERY');
- 文件夹块增加触发器KEY-EXEQRY,Execution Hierarchy属性为Before,Fire in Enter-Query Mode属性为Yes,代码为app_folder.event('KEY-EXEQRY');
- 文件夹块增加触发器POST-QUERY,Execution Hierarchy属性为Before,代码为app_folder.event('POST-QUERY');
- 创建或修改表单级触发器WHEN-WINDOW-RESIZED增加代码
IF :system.event_window IN ('MAIN') THEN
IF (get_window_property(:system.event_window,
width) < 5.7) THEN
set_window_property(:system.event_window,
width,
5.7);
ELSE
app_folder.event('WHEN-WINDOW-RESIZED');
END IF;
END IF; - 创建或修改表单级触发器KEY-CLRFRM增加代码app_folder.event('KEY-CLRFRM');
- 创建或修改表单级触发器WHEN-NEW-FORM-INSTANCE增加代码app_folder.define_folder_block('HELPSTZD',
'NOTICE_MAIN',
'NOTICE_MAIN_PROMPT',
'NOTICE_MAIN_STACKED',
'MAIN');
app_folder.event('INSTANTIATE');
过程app_folder.define_folder_block的说明:
app_folder.define_folder_block('',
'',
'',
'',
'',
['']);
参数解释
其中OBJECT NAME 为表单的名称。
FOLDER BLOCK NAME 为文件夹块的名称
PROMPT BLOCK NAME 为文件夹块对应的列标题块的名称
FOLDER STACKED CANVAS NAME 为堆叠画布的名称
FOLDER WINDOW NAME 为表单主窗口的名称
DISABLED FUNCTIONS 用来禁用某些功能。。。 - 修改表单级触发器FOLDER_ACTION,代码为app_folder.event(:global.folder_action);
- 修改表单级触发器FOLDER_RETURN_ACTION的代码为null;
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26101098/viewspace-704194/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/26101098/viewspace-704194/
最后
以上就是热情帅哥为你收集整理的Form Builder中Folder文件夹功能的使用的全部内容,希望文章能够帮你解决Form Builder中Folder文件夹功能的使用所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复