Eine Checkbox im Header von Spalte 1 für alles markieren, erspart Strg + A Shortcut
ab Vista, SetWindowTheme nicht unbedingt nötig
Code: Alles auswählen
Import "UxTheme.lib"
SetWindowTheme(hwnd, classname.p-unicode, titlename)
EndImport
#list_nr = 1
If OpenWindow(0, 100, 100, 400, 500, "ListIcon Example", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
flags = #PB_ListIcon_FullRowSelect | #PB_ListIcon_AlwaysShowSelection
flags | #PB_ListIcon_MultiSelect
ListIconGadget(#list_nr, 5, 5, 390, 490, "", 0, flags)
;SetWindowTheme(GadgetID(#list_nr), "explorer", 0)
AddGadgetColumn(#list_nr, 1, "Name", 100)
AddGadgetColumn(#list_nr, 2, "Address", 250)
#HDS_CHECKBOXES = $0400
header = SendMessage_(GadgetID(#list_nr), #LVM_GETHEADER, 0, 0)
hdstyle = GetWindowLongPtr_(header, #GWL_STYLE)
hdstyle | #HDS_CHECKBOXES
SetWindowLongPtr_(header, #GWL_STYLE, hdstyle)
column = 1
hdi.HDITEM
hdi\mask = #HDI_FORMAT
SendMessage_(header, #HDM_GETITEM, column, hdi)
#HDF_CHECKBOX = $00000040
hdi\fmt | #HDF_CHECKBOX
SendMessage_(header, #HDM_SETITEM, column, hdi)
For j = 1 To 22
AddGadgetItem(#list_nr, -1, #LF$+"Harry Rannit"+#LF$+"12 Parliament Way, Battle Street, By the Bay")
AddGadgetItem(#list_nr, -1, #LF$+"Ginger Brokeit"+#LF$+"130 PureBasic Road, BigTown, CodeCity")
Next
Repeat
Event = WaitWindowEvent()
Until Event = #PB_Event_CloseWindow
EndIf