gestern habe ich groß geschrieben, dass ich es verstanden habe, heute kommt der Niederschlag.
Bei den Buttons funktioniert dieser Code
Code: Alles auswählen
For I = 1 to len(::abuttons)
::oButton1:= XbpPushButton():new(::drawingArea , , {46,3}, )
::oButton1:caption := " "+::abuttons[i,1]+" "
*** ::oButton1:activate := {|| PostAppEvent(nEvent, ASC(aElems[nI, 2]))} // gab Array Fehler
::oButton1:activate := Blockify(xbeP_Keyboard, ::abuttons, i) // hier wird in der Funktion der Codeblock gebildet
next
STATIC FUNCTION Blockify(nEvent, aElems, nI)
Local bBlock
bBlock := {|| PostAppEvent(nEvent, ASC(aElems[nI, 2]))} // in Variable damit es später im Debugger sehen kann
RETURN (bBlock)
Code: Alles auswählen
::ABrowse:AddColumn ( {|| ::aData[::nRecno,1] }, ::aSpaltendaten[1,2] , ::aSpaltendaten[1,1] )
::ABrowse:AddColumn ( {|| ::aData[::nRecno,2] }, ::aSpaltendaten[2,2] , ::aSpaltendaten[2,1] )
::ABrowse:AddColumn ( {|| ::aData[::nRecno,3] }, ::aSpaltendaten[3,2] , ::aSpaltendaten[3,1] )
::ABrowse:AddColumn ( {|| ::aData[::nRecno,4] }, ::aSpaltendaten[4,2] , ::aSpaltendaten[4,1] )
Code: Alles auswählen
For I = 1 to 4
** ::ABrowse:AddColumn ( {|| ::aData[::nRecno,i] }, ::aSpaltendaten[i,2]+2 , ::aSpaltendaten[i,1] )
// funktioniert nicht, gab einen Arrayfehler, was wegen dem gelernten zu vermuten war
::ABrowse:AddColumn ( Blockifyarray(::aData, ::nRecno, i) , ::aSpaltendaten[i,2]+2 , ::aSpaltendaten[i,1] )
// funktioniert auch nicht, Spalten richtig, aber jede Zeile enthält die Daten der 1. Arrayzeile. Da stimmt was mit ::nRecno
// nicht oder?
next
STATIC FUNCTION Blockifyarray(aDaten, nrecnr, nI)
Local bBlock
bBlock := {|| aDaten[nRecnr,nI] }
return (bBlock)
Warum funtioniert das mit der Funktion hier nicht?
mfg
Wolfgang