正在进行填充一个临时表与小部件手柄ABL
问题描述:
我试图动态地创建一组按钮,使用此代码:正在进行填充一个临时表与小部件手柄ABL
DEFINE VAR temp-hand AS WIDGET-HANDLE.
DEFINE INPUT PARAMETER ipc AS CHARACTER NO-UNDO.
&global-define X VALUE(v + ipc)
CREATE BUTTON temp-hand
ASSIGN
FRAME = FRAME btn-frame:HANDLE
ROW = vdeInicio
COLUMN = 10
WIDTH = 19
LABEL = ipc
SENSITIVE = TRUE
VISIBLE = TRUE
TRIGGERS:
ON CHOOSE PERSISTENT RUN btn-mess IN THIS-PROCEDURE.
END TRIGGERS.
temp-hand:LOAD-IMAGE("imagenes/Entradas").
vdeInicio = vdeInicio + 3.57.
这工作,当我解决一个按钮控件,也如果编写一个循环并调用一个包含此代码的过程,它会创建多个按钮,但指向一个句柄,一些人告诉我创建临时表并在那里保存小部件句柄可能会起作用,但我不知道如何填充你可以帮我这个,
答
类似这样的:
define temp-table tt_buttonList no-undo
field buttonId as integer
field buttonHandle as widget-handle
.
define variable i as integer no-undo.
do i = i to 5:
create tt_buttonList.
tt_buttonList.buttonId = i.
CREATE BUTTON tt_buttonList.buttonHandle
ASSIGN FRAME = FRAME btn-frame:HANDLE /* this is undefined in your example -- I have no idea where it came from */
ROW = i * 4
COLUMN = 10
WIDTH = 19
LABEL = string(i)
SENSITIVE = TRUE
VISIBLE = TRUE
.
end.
我不知道你为什么要从触发器程序运行这样的代码。虽然它可能“有效”,但将UI混合到db访问代码中确实会造成严重的麻烦。
对不起,我发送的只是psrt的代码帧定义在别的地方。 –
我需要这个来创建一个选项的列表,这些选项会改变某些表的内容,所以我需要读取表(未知数的记录),并创建儿子许多按钮作为选项。所有这些都是因为UI将在触摸屏上运行。 –
这并没有解释或证明在触发器中运行它 –