Seite 1 von 1
AutoScroll ListView
Verfasst: 12.05.2010 23:25
von benji
Will haben, dass mein ListView Automatisch nach unten scrollt. Dies will ich mit
SendMessage erreichen:
4121 = LVM_ENSUREVISIBLE
http://msdn.microsoft.com/en-us/library ... 85%29.aspx
Aber er scrollt nicht...
Vielleicht könnt ihr mir helfen
Re: AutoScroll ListView
Verfasst: 12.05.2010 23:34
von ts-soft
ListView in PB = ListBox in API
ListIcon in PB = ListView in API!
Für eine ListBox sollte doch SetGadgetState reichen?
//edit:
Code: Alles auswählen
SendMessage_(GadgetID(_list), #LB_SETTOPINDEX, CountGadgetItems(_list) -1, 0)
Re: AutoScroll ListView
Verfasst: 12.05.2010 23:47
von benji
ts-soft hat geschrieben:ListView in PB = ListBox in API
ListIcon in PB = ListView in API!
Für eine ListBox sollte doch SetGadgetState reichen?
//edit:
Code: Alles auswählen
SendMessage_(GadgetID(_list), #LB_SETTOPINDEX, CountGadgetItems(_list) -1, 0)
zu deiner ersten Info:
Danke das wusste ich nicht :/
ZU deinem zweiten Tipp:
PB_Help hat geschrieben:SetGadgetState() ändert den ausgewählten Eintrag. Wird -1 angegeben, dann wird die Auswahl entfernt.
das hat so wie ich das verstehe nichts mit scrollen zutun?
EDIT:
Danke hat schon geklappt^^
Re: AutoScroll ListView
Verfasst: 12.05.2010 23:49
von Kiffi
ts-soft hat geschrieben:Für eine ListBox sollte doch SetGadgetState reichen?
jup, gilt gleichermaßen für ListView() und ListIconGadget().
Grüße ... Kiffi
Re: AutoScroll ListView
Verfasst: 12.05.2010 23:50
von ts-soft
benji hat geschrieben:
das hat so wie ich das verstehe nichts mit scrollen zutun?
MSDN hat geschrieben:Ensures that the specified item in a list box is visible.
Also dasselbe, wie Deins für das ListIcon
Re: AutoScroll ListView
Verfasst: 12.05.2010 23:50
von Fluid Byte
Hast du es ausprobiert? Nö. SetGadgetState() scrollt in einer ListView (API ListBox) automatisch zu dem item so das es in den sichtbaren Bereich kommt. Das ist bei einem ListIconGadget() nicht der Fall.
Re: AutoScroll ListView
Verfasst: 12.05.2010 23:55
von Kiffi
Fluid Byte hat geschrieben:Das ist bei einem ListIconGadget() nicht der Fall.
bei mir schon (schnelles Beispiel aus der PB-Hilfe):
Code: Alles auswählen
If OpenWindow(0, 0, 0, 270, 140, "ListViewGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
ListIconGadget(0, 10, 10, 250, 120, "", 100, #PB_ListIcon_AlwaysShowSelection)
For a = 1 To 120
AddGadgetItem (0, -1, "Item " + Str(a) + " of the Listview") ; define listview content
Next
SetGadgetState(0, 90) ; set (beginning with 0) the tenth item as the active one
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
Grüße ... Kiffi
Re: AutoScroll ListView
Verfasst: 12.05.2010 23:58
von ts-soft
Oh, man, wo kommen die alle auf einmal her
Jetzt hab ich mein Beispiel für die Katz gemacht
Code: Alles auswählen
EnableExplicit
OpenWindow(0, #PB_Ignore, #PB_Ignore, 640, 460, "", #PB_Window_SystemMenu)
ListViewGadget(0, 10, 10, 620, 400)
ButtonGadget(1, 290, 420, 60, 30, "Scroll")
Define i
For i = 0 To 100
AddGadgetItem(0, i, Str(i))
Next
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow : Break
Case #PB_Event_Gadget
If EventGadget() = 1
SendMessage_(GadgetID(0), #LB_SETTOPINDEX, CountGadgetItems(0) -1, 0)
EndIf
EndSelect
ForEver
Re: AutoScroll ListView
Verfasst: 13.05.2010 00:09
von benji
also leute, danke ich weiß warum ich hier gerne auftauche - weil man einfach immer eine super Antwort bekommt!!!
Und ja es hat alles geklappt
