Seite 1 von 1

ListIconGadget Letztes Item anzeigen

Verfasst: 25.01.2014 18:43
von ProgOldie
Hallo,
wie erreicht man es, dass in einem ListiconGadget ein bestimmtes Item (z.B. Zeile 34) als oberste im Gadget sichtbar ist? In der Win-Api-Sammlung von rsbasic habe ich dazu nichts gefunden.

Re: ListIconGadget Letztes Item anzeigen

Verfasst: 25.01.2014 18:47
von RSBasic
Hm leider versteh ich es nicht so ganz. Möchtest du bis zur 34. Zeile scrollen, aber so, so dass die 34. Zeile ganz oben sichtbar ist, oder möchtest du den 34. Eintrag nach ganz oben an erste Stelle verschieben?

Re: ListIconGadget Letztes Item anzeigen

Verfasst: 25.01.2014 18:55
von ProgOldie
Möchtest du bis zur 34. Zeile scrollen, aber so, so dass die 34. Zeile ganz oben sichtbar ist.
Genauso wäre es optimal.

Re: ListIconGadget Letztes Item anzeigen

Verfasst: 25.01.2014 19:06
von RSBasic

Code: Alles auswählen

EnableExplicit

Define EventID
Define a
Define POINT.POINT

If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  ListIconGadget(1, 0, 0, WindowWidth(0), WindowHeight(0), "Spalte", 400)
  For a=1 To 100
    AddGadgetItem(1, -1, "Item" + Str(a), 0, 0)
  Next
  
  SendMessage_(GadgetID(1), #LVM_GETITEMPOSITION, 34-2, POINT)
  SendMessage_(GadgetID(1), #LVM_SCROLL, 0, POINT\y)
  
  Repeat
    EventID = WaitWindowEvent()
    If EventID = #PB_Event_CloseWindow
      End
    EndIf
  ForEver
EndIf

Re: ListIconGadget Letztes Item anzeigen

Verfasst: 25.01.2014 22:21
von Shardik
Ich habe im englischen Forum auch schon einmal ein plattform-unabhängiges Beispiel (lauffähig unter Windows, Linux und MacOS) gezeigt, das nach einem Doppelklick auf eine Zeile diese als erste Zeile anzeigt:
http://www.purebasic.fr/english/viewtop ... 40&t=57788