Listicon Scrollbalken vertikal entfernen

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Velindos
Beiträge: 598
Registriert: 15.11.2010 10:56

Listicon Scrollbalken vertikal entfernen

Beitrag von Velindos »

Hallo Leute,
gibt es eine Möglichkeit den vertikalen Scrollbalken vom ListIconGadget zu entfernen. Habe Beispiele mit ListView gefunden für Horizontalen Balken aber nichts für ListIconGadget!

Gruss ... Velindos
Windows 7/8/8.1/10 (32/64-Bit) |Ubuntu 10.4 (64-Bit) |Purebasic 5.71 LTS (32/64-Bit)
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Listicon Scrollbalken vertikal entfernen

Beitrag von RSBasic »

Entweder:

Code: Alles auswählen

EnableExplicit

Define EventID
Define a
Global LVProc

Procedure LVProc(hWnd, uMsg, wParam, lParam)
  Select uMsg
    Case #WM_PAINT
      ShowScrollBar_(hWnd, #SB_VERT, #False)
  EndSelect
  
  ProcedureReturn CallWindowProc_(LVProc, hWnd, uMsg, wParam, lParam)  
EndProcedure

If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  ListIconGadget(1, 0, 0, WindowWidth(0), WindowHeight(0), "Spalte", 450, 0)
  
  For a=1 To 100
    AddGadgetItem(1, -1, "Item " + Str(a), 0, 0)
  Next
  
  LVProc = SetWindowLongPtr_(GadgetID(1), #GWL_WNDPROC, @LVProc())
  
  Repeat
    EventID = WaitWindowEvent()
    If EventID = #PB_Event_CloseWindow
      End
    EndIf
  ForEver
EndIf
Oder:

Code: Alles auswählen

EnableExplicit

Define EventID
Define a

If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  If ContainerGadget(0, 0, 0, WindowWidth(0), WindowHeight(0), #PB_Container_BorderLess)
    
    ListIconGadget(1, 0, 0, GadgetWidth(0)+20, GadgetHeight(0), "Spalte", 450, 0)
    
    For a=1 To 100
      AddGadgetItem(1, -1, "Item " + Str(a), 0, 0)
    Next
    
    CloseGadgetList()
  EndIf
  
  Repeat
    EventID = WaitWindowEvent()
    If EventID = #PB_Event_CloseWindow
      End
    EndIf
  ForEver
EndIf
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
Velindos
Beiträge: 598
Registriert: 15.11.2010 10:56

Re: Listicon Scrollbalken vertikal entfernen

Beitrag von Velindos »

Hallo RSBasic,
danke für deinen Vorschlag und deine Hilfe! Habe die Sache integriert und läuft! ListIcon lässt sich über Mausrad bedienen!
Gibt es einen Funktion für Listicon wo der Scrollbalken auf der linken Seite ist? Kann man den Balken auch auf schwarz einfärben?

Gruss ... Velindos
Windows 7/8/8.1/10 (32/64-Bit) |Ubuntu 10.4 (64-Bit) |Purebasic 5.71 LTS (32/64-Bit)
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Listicon Scrollbalken vertikal entfernen

Beitrag von RSBasic »

Code: Alles auswählen

EnableExplicit

Define EventID
Define a

If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  ListIconGadget(1, 0, 0, WindowWidth(0), WindowHeight(0), "Spalte", 450, 0)
  
  For a=1 To 100
    AddGadgetItem(1, -1, "Item " + Str(a), 0, 0)
  Next
  
  SetWindowLongPtr_(GadgetID(1), #GWL_EXSTYLE, GetWindowLongPtr_(GadgetID(1), #GWL_EXSTYLE) | #WS_EX_LEFTSCROLLBAR)
  SendMessage_(GadgetID(1), #WM_NCPAINT, 1, 0)
 
  Repeat
    EventID = WaitWindowEvent()
    If EventID = #PB_Event_CloseWindow
      End
    EndIf
  ForEver
EndIf
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
Velindos
Beiträge: 598
Registriert: 15.11.2010 10:56

Re: Listicon Scrollbalken vertikal entfernen

Beitrag von Velindos »

Hallo RSBasic,
danke für deine Lösung, habe es integriert und funzt!

Gruss ... Velindos
Windows 7/8/8.1/10 (32/64-Bit) |Ubuntu 10.4 (64-Bit) |Purebasic 5.71 LTS (32/64-Bit)
Benutzeravatar
Velindos
Beiträge: 598
Registriert: 15.11.2010 10:56

Re: Listicon Scrollbalken vertikal entfernen

Beitrag von Velindos »

Hallo Leute,
hab noch ein Problem mit dem Scrollbalken, kann man den auf die Hintergrundfarbe einstellen, wie zB. Black?

Gruss ... Velindos
Windows 7/8/8.1/10 (32/64-Bit) |Ubuntu 10.4 (64-Bit) |Purebasic 5.71 LTS (32/64-Bit)
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Listicon Scrollbalken vertikal entfernen

Beitrag von RSBasic »

Du könntest z.B. mit einer separaten Scrollbarleiste tricksen: http://purebasic.fr/english/viewtopic.p ... 75#p260875
Der Code scheint aber nicht sauber zu funktionieren. Du müsstest es noch anpassen, aber als Vorlage sollte ausreichen.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Antworten