不同点——FOLDER块(相当于原来的countries块),FOLDER提示(表头)
1.打开FOLDER模板,修改工作台名称,另存为 2.修改MAIN窗口名称及标题 3.修改及新建画布,并确认窗口一致 ①三个画布(注意顺序): _CVS:主画布,整张画布(红色),表单(黄色)直接放这里 _FIXED:FIXED画布,提示框和滚动条(紫色) _STK:堆叠画布,放列表(绿色) ②修改主画布名称及属性 ③修改堆叠画布名称及属性 ④新建堆叠FIXED画布 设置FIXED画布内容: (1)CURRENT_RECORD_INDICATOR (2)数据块的滚动条 (3)提示块:FOLDER_OPEN、FOLDER_TITLE、FOLDER_DUMMY、ORDER_BY123(放至中间任意地方) (4)设置FIXED画布视图端口宽度、高度与物理的宽度高度一致;特别注意:必须把ITEM都包含在内; 建完画布后,再次确认主窗口对应的主画布是否正确。 4.修改块 其中FOLDER为数据块,FOLDER_PROMPT为提示块 5.修改项 ①COUNTRIES块(数据块) A.保留原有的两项 B.利用数据块向导重新导入(全部)数据项 C.为项设置属性: a.ROWID子类属性设置 b.显示项的属性:子类属性、画布、清空提示;设置X坐标为0,Y坐标为0.25;设置宽度为1。 ②COUNTRIES_PROMPT块(提示块) A.删掉原有的FIELD1 B.将COUNTRIES块中要显示的项(还有需要用到的项)粘过来 C.设置属性 子类属性设为:folder_prompt_multirow;设置初始值(提示块显示的值);设置宽度;设置X坐标为0,Y坐标为0。 6.设置CVS主画布 菜单->视图->堆叠视图->选择FIXED画布,再菜单->视图->堆叠视图->同时选择FIXED、STK画布,再调整各画布XY坐标 7.新建LOV(直接粘原来的,记得把“记录组”也粘过来) 8.新建及修改触发器 ①更改触发器内容:PRE-FORM ②更改触发器WHEN-NEW-FORM-INSTANCE内容: app_folder.define_folder_block('CUXFODCN11733', 'COUNTRIES', 'COUNTRIES_PROMPT', 'COUNTRY_STK', 'COUNTRY_WIN', '', '', 'COUNTRY_FIXED'); app_folder.event('INSTANTIATE'); ③更改触发器WHEN-WINDOW-RESIZED内容: if :system.event_window in ('COUNTRY_WIN') then app_folder.event('WHEN-WINDOW-RESIZED'); end if; ④更改程序单元APP_CUSTOM内容 :if (wnd = 'COUNTRY_WIN') THEN 之后可得到半成品(未加查询和增删改功能): 列的位置可以拖拽,宽度可自己调整 --------------------------------------添加查询和增删改功能------------------------------------------- 实际做法与之前相同 1.把QUERY块粘过来,重新设属性 2.把程序单元粘过来 3.把触发器粘过来 4.把LOV粘过来 5.把记录组粘过来 搞定完工~ 成品 CUXFODCN11733 frmcmp_batch userid=apps/xxx module=$CUX_TOP/forms/ZHS/CUXFODCN11733.fmb output_file=$CUX_TOP/forms/ZHS/CUXFODCN11733.fmx