[elektro] OT: VB2008 listbox első elem kiválasztása

hozso_001 at freemail.hu hozso_001 at freemail.hu
Fri Nov 22 08:35:57 CET 2013


   Lehet, hogy rosszul emlékszem, de mintha a VB6-ban
csak egy lefelé mutató nyíl lett volna a listbox jobb oldalán.
Ott ha azt megnyomtad, legördült a lista és ugye muszáj
volt rákattintatni a kiválasztandó elemre. Ez így tiszta
sor. Itt (VB2008) meg van fel-le görgetés és nem jeleníti
meg a teljes listát, hanem csak az ablakon belül görgeti
a választható értékeket.

   Nem ragaszkodom az először vázolt megoldáshoz!
Nekem az is jó lenne, ha úgy működne a kiválasztás,
ahogy az előbb leírtam! Tehát ha rákattint, lenyílik
az összes lehetőség és kattintással választok újat.
(Tehát nem az ablakon belül kellene léptetni a
választható értékeket.) Ha ezt be lehet állítani,
akkor az is jó, de kérdés, hogy hogyan állítható
be ez a funkció?

   Ebben nekem az a zavaró, hogy csak egy sor látszik,
annak a tartalma változik, ahogy a scrollra kattintanak,
  de a kiválasztott elem ugyanaz marad. Így megtévesztő.

   Ha minden kötél szakad, akkor meg tudom úgy oldani,
hogy felteszek egy (vagy két) gombot, amikkel görgetni
lehet és nem listbox lesz használva, hanem egy sima
textbox. Aztán a VB program intézi a kattintásoknál
a kiválsztás változtatását. :D Legfeljebb nem lesz szép
animáció, ahogy az értékek a következőre gördülnek. :D

   Üdv.: Horváth Zsolt



2013.11.21. 16:30 keltezéssel, Kovács József írta:
> 2013.11.21. 16:19 keltezéssel, Kovács József írta:
>   > 2013.11.21. 11:03 keltezéssel, hozso_001 at freemail.hu írta:
>   >>    Sziasztok!
>   >>
>   >>    Van egy listboxom. Azt szeretném megvalósítani, hogy
>   >> ha az oldalán lévő görgetők segítségével megváltoztatják
>   >> a tartalmát, akkor a látható elem legyen a kiválasztott
>   >> egyben.
>   >>    Tehát egy sor látszik a listboxból.
>   >
>   > Ez az az elvi baj... a ListBox nem így használandó!
>   >
>   > Abból NORMÁLIS esetben TÖBB sor látszik egyszerre
>   > és abból kattintással választ  a user... erre való.
>   > És a kattintás adja meg, hogy melyik kell ténylegesen.
>   >
>   >
>   > Ezért NINCS is olyan elérhető info, hogy
>   > a CSAK EGYETLEN sorban éppen mi látszik.
>   > Mert elvi szinten ez szükségtelen....
>   >
>   > Ezért KELL az (elvi hibásan használt) egysoros kijelzésnél is kattintani.
>   >>  Ami látszik, mindig
>   >> az legyen a kiválasztott. Most úgy működik, hogy hiába
>   >> görgetem fel-le a tartalmát, rá is kell kattintani a látható
>   >> értékre, hogy az legyen a kiválasztott.
>   >
>   > Csak elvben okoskodva, mivel VB2008-t nem használok...
>   >
>   > A megkerülő út talán az lehet, hogy létezik egy TopIndex tulajdonsága.
>   > TopIndex: Gets!!!!! or sets the index!!!! of the first_visible !!!!!
> item of a list box.
>   >
>   > Vagyis, e szerint azt bármikor megtudhatod, hogy éppen
>   > HÁNYADIK elem van a LÁTHATÓ részben LEGFELÜL.
>   >
>   > ....és mivel a látható rész az csak EGY SOR magas nálad.
>   > Így a kapott index éppen azé az elemé lesz, ami látszik is.
>   >
>   > Innen viszont már szerintem sima ügy.
>   > A kapott index alapján a tartalom is kiszedhető.
>   >
>   > Hopp!
>   > Van egy kurva nagy baj... úgy látom, hogy
>   > nem tudod MIKOR futtatni a kódod, mert:
>   > a scrollozáskor NINCS vezérlő esemény :-(
>   >
>   > Akkor viszont külön kóddal el kell kapnod saját kezűleg a ListBox
> scroll eseményt.
>   >
>   > Ilyesmi módon... lehet elkapni a scroll eseményt...
>   >
> http://www.codeproject.com/Articles/7554/Getting-Scroll-Events-for-a-Listbox
>   >
>   > Szóval, megoldható amit akarsz, csak munkás-körülményes,
>   > mert nem az elvárt módon használod a ListBox kontrollt.
>   >
>   > KJ
>
> -----------------------------------------
>            elektro[-flame|-etc]



More information about the Elektro mailing list