Code: Alles auswählen
GetGadgetItemAttribute(#FormMain_ListIcon, 0, #PB_ListIcon_ColumnWidth, 0)
Hier ein lauffähiger Code, der das Problem zeigt. Verstellt einfach die Breite der Spalten und drückt dann den Button, um die Breiten anzuzeigen.
Code: Alles auswählen
EnableExplicit
Enumeration
#FormMain
#FormMain_ListIcon
#FormMain_Button_Width
EndEnumeration
OpenWindow(#FormMain, 100, 100, 500, 400, "Fenster")
ListIconGadget(#FormMain_ListIcon, 10, 10, 480, 320, "Spalte 1", 100, #PB_ListIcon_FullRowSelect)
AddGadgetColumn(#FormMain_ListIcon, 1, "Spalte 2", 200)
AddGadgetColumn(#FormMain_ListIcon, 2, "Spalte 3", 140)
Define i
For i = 0 To 5
AddGadgetItem(#FormMain_ListIcon, i, "0," + Str(i) + #LF$ + "1," + Str(i) + #LF$ + "2," + Str(i))
Next i
;SetGadgetItemAttribute(#FormMain_ListIcon, 0, #PB_ListIcon_ColumnWidth, 200, 0)
;SetGadgetItemAttribute(#FormMain_ListIcon, 0, #PB_ListIcon_ColumnWidth, 200, 1)
;SetGadgetItemAttribute(#FormMain_ListIcon, 0, #PB_ListIcon_ColumnWidth, 200, 2)
ButtonGadget(#FormMain_Button_Width, 10, 340, 100, 30, "Spaltenbreiten")
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Break
Case #PB_Event_Gadget
Select EventGadget()
Case #FormMain_Button_Width
Define c0 = GetGadgetItemAttribute(#FormMain_ListIcon, 0, #PB_ListIcon_ColumnWidth, 0)
Define c1 = GetGadgetItemAttribute(#FormMain_ListIcon, 0, #PB_ListIcon_ColumnWidth, 1)
Define c2 = GetGadgetItemAttribute(#FormMain_ListIcon, 0, #PB_ListIcon_ColumnWidth, 2)
Debug "Spaltenbreiten: " + c0 + " " + c1 + " " + c2
EndSelect
EndSelect
ForEver