mit diese Code wird eine Spalte an der erste Stelle mit CheckBox erzeugt.
Wie kann ich eine Spalte wie mit AddGadgetColumn ganz Links/Rechts oder an eine andere Stelle erzeugen?
Danke
Code: Alles auswählen
Structure ProgramDataCB
QuitValue.i
WindowMutex.i
LastWindow.s
CurrentLine.i
CurrentRecord.s
CurrentCheckedRow.i ; Here I am!
CurrentDirectory.s
DatabaseDirectory.s
TemporaryDirectory.s
RepeaterDirectory.s
DatabaseName.s
DatabaseHandle.i
SearchCueFont.i
SearchNormalFont.i
SearchCueText.s
CurrentDate.s
EndStructure
Global Program.ProgramDataCB
#lstData=7
Procedure WndProc(hwnd, uMsg, wParam, lParam)
Select uMsg
Case #WM_NOTIFY
*uMsg.NMHDR = lParam
If *uMsg\hwndFrom = GadgetID(#lstData) And *uMsg\code = #NM_CLICK
*Li.NMITEMACTIVATE = lParam
Program\CurrentCheckedRow = *Li\iItem
EndIf
EndSelect
ProcedureReturn #PB_ProcessPureBasicEvents
EndProcedure
If OpenWindow(0, 0, 0, 640, 400, "ListIconGadgets", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
ListIconGadget(#lstData, 10, 10, 620,380, "CheckBox", 100, #PB_ListIcon_GridLines|#PB_ListIcon_CheckBoxes|#PB_ListIcon_FullRowSelect)
For c = 1 To 3
AddGadgetColumn(#lstData, c, "Column " + Str(c), 100)
Next
For r = 0 To 100
AddGadgetItem(#lstData, r, ""+Chr(10)+"Item-1 "+Str(r)+Chr(10)+"Item-2 "+Str(r)+Chr(10)+"Item-3 "+Str(r))
Next
EndIf
SetWindowCallback(@WndProc())
Repeat
Select WaitWindowEvent(#lstData)
Case #PB_Event_CloseWindow
Quit = 1
Case #PB_Event_Gadget
Select EventGadget()
Case #lstData
Select EventType()
Case #PB_EventType_Change
Status = GetGadgetItemState(#lstData, Program\CurrentCheckedRow)
If status = 0
Debug "Row : #"+Str(Program\CurrentCheckedRow)+" UnSelected"
Debug "CheckBox UnChecked"
Debug "----"
ElseIf status = 1
Debug "Row : #"+Str(Program\CurrentCheckedRow)+" Selected"
Debug "CheckBox UnChecked"
Debug "----"
ElseIf Status = 2
Debug "Row : #"+Str(Program\CurrentCheckedRow)+" UnSelected"
Debug "CheckBox Checked"
Debug "----"
ElseIf Status = 3
Debug "Row : #"+Str(Program\CurrentCheckedRow)+" Selected"
Debug "CheckBox Checked"
Debug "----"
EndIf
EndSelect
EndSelect
EndSelect
Until Quit = 1