2017-06-29 3 views
0

Ich versuche, dynamisch eine Gruppe von Schaltflächen zu erstellen, mit diesem Code:mit Widget-Griff im Gange 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. 

Dies funktioniert, wenn ich einen einzigen Knopf-Widget adressieren, auch wenn ein schreibe eine Schleife und rufe eine Prozedur mit diesem Code auf, es erstellt mehrere Buttons, zeigt aber auf einen Handle, einige haben mir gesagt, als eine temporäre Tabelle zu erstellen und dort zu speichern kann funktionieren, aber ich weiß nicht, wie ich das befüllen soll Tabelle mit dem Widget-Griff, können Sie mir dabei helfen,

Antwort

2

So etwas wie das:

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. 

Ich habe keine Ahnung, warum Sie Code wie folgt aus einer Trigger-Prozedur ausführen würden. Während es "funktionieren könnte", verlangt das Mischen von UI in den DB-Zugangscode wirklich ernsthafte Probleme.

+0

Entschuldigung, ich sende nur einen Psrt des Codes, der Rahmen wird woanders definiert. –

+0

Ich brauche dies, um eine Liste von Optionen zu erstellen, die sich auf den Inhalt bestimmter Tabelle ändern, also muss ich die Tabelle lesen (unbekannte Anzahl von Datensätzen) und erstellen Sie viele Schaltflächen als Option sind darin. All dies, weil die Benutzeroberfläche auf einem Touchscreen ausgeführt wird. –

+0

Das erklärt oder rechtfertigt es nicht, es in einem Trigger auszuführen –

Verwandte Themen