EnableExplicit LoadImage(1, #PB_Compiler_Home + "Examples\Sources\Data\Drive.bmp") Define EventID Procedure AddGadgetColumnEx(Gadget, Position, Title$, Width, ImageID) Protected himl Protected iImage Protected LVCOLUMN.LVCOLUMN If GetObjectType_(ImageID) = #OBJ_BITMAP himl = SendMessage_(GadgetID(Gadget), #LVM_GETIMAGELIST, #LVSIL_SMALL, 0) If himl = 0 himl = ImageList_Create_(16, 16, #ILC_COLOR32, 1, 1) SendMessage_(GadgetID(Gadget), #LVM_SETIMAGELIST, #LVSIL_SMALL, himl) EndIf iImage = ImageList_Add_(himl, ImageID, 0) Else iImage = ImageID EndIf LVCOLUMN\mask = #LVCF_IMAGE | #LVCF_TEXT | #LVCF_WIDTH | #LVCF_FMT LVCOLUMN\fmt = #LVCFMT_LEFT | #LVCFMT_COL_HAS_IMAGES LVCOLUMN\pszText = @Title$ LVCOLUMN\cchTextMax = Len(Title$) LVCOLUMN\iSubItem = Position LVCOLUMN\cx = Width LVCOLUMN\iImage = iImage LVCOLUMN\iOrder = Position SendMessage_(GadgetID(Gadget), #LVM_INSERTCOLUMN, Position, @LVCOLUMN) EndProcedure If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) ListIconGadget(1, 10, 10, WindowWidth(0)-20, WindowHeight(0)-20, "", 0, 0) AddGadgetColumnEx(1, 1, "Spalte 1", 100, ImageID(1)) AddGadgetColumnEx(1, 2, "Spalte 2", 100, ImageID(1)) AddGadgetColumnEx(1, 3, "Spalte 3", 100, ImageID(1)) Repeat EventID = WaitWindowEvent() If EventID = #PB_Event_CloseWindow End EndIf ForEver EndIf