Manejo de Scroll Bar en ListBox

01/10/2007 - 16:49 por Edgar | Informe spam
Hola,
A quien me pueda dar una pista para ajustar este inconveniente, se lo
agradezco.

Tengo un registro seleccionado en un ListBox, actualizo dicho registro y
muestro los datos nuevamente en el listbox con el metodo list, trayendo los
datos desde una hoja. Cuando se Utiliza el metodo list la posicion del
scrollbar (o de cursor) se va al principio del listBox, causando
inconvenientes de reposicionamiento manual, ya que el o los registros
actualizados se encuentran en listindex 30, 40 etc.
Quisiera tener la opcion de capturar la posicion del scrollbar vertical, que
es el que utilizo en mis listboxes, y volver a llamar esta posicion luego de
aplicar el metodo list, para que los usuarios no tengan que llegar al
registro que actualizaron manualmente.
Si alguien tiene alguna idea al respecto se lo agradecere.

Muchos saludos
Edgar Rey

Preguntas similare

Leer las respuestas

#1 Ivan
03/10/2007 - 23:17 | Informe spam
agrega esta linea de codigo a tu subrutina de actualizaciòn:
ListBox1.TopIndex = ListBox1.ListCount 'con esto se mostraran los
ultimos valores>



disculpame otra vez ¿st?, pero, solo por no liar a Edgar, si tu opcion
le fuese valida, creo que convendria que la cambiase por =>>
ListBox1.TopIndex = ListBox1.ListCount - 1

lo dicho, solo por evitar algun que otro quebradero de cabeza a OP

un saludo
Ivan
Respuesta Responder a este mensaje
#2 Edgar
08/10/2007 - 15:42 | Informe spam
Hola

Gracias a ambos,
Las dos respuestas son validas, y ciertamente la acotacion de Ivan es
razonable.
Me vale con almacenar en una variable la posicion del listindex antes de
actualizar. Luego si quisiera que apareciera al principio del listbox
nuevamente el registro en cuestion, la linea de ST es valida, ya que
originalmente con solo guardar la posicion de listindex y llamarla luego de
actualizar, el registro en cuestion apareceria al final del ListBox.

Muy amables
Edgar Rey


"Ivan" wrote:


> agrega esta linea de codigo a tu subrutina de actualizacirn:
> ListBox1.TopIndex = ListBox1.ListCount 'con esto se mostraran los
> ultimos valores>

disculpame otra vez ?st?, pero, solo por no liar a Edgar, si tu opcion
le fuese valida, creo que convendria que la cambiase por =>>
ListBox1.TopIndex = ListBox1.ListCount - 1

lo dicho, solo por evitar algun que otro quebradero de cabeza a OP

un saludo
Ivan


Respuesta Responder a este mensaje
#3 ST
08/10/2007 - 19:10 | Informe spam
On 3 oct, 16:17, Ivan wrote:
> agrega esta linea de codigo a tu subrutina de actualizaciòn:
> ListBox1.TopIndex = ListBox1.ListCount 'con esto se mostraran los
> ultimos valores>

disculpame otra vez ¿st?, pero, solo por no liar a Edgar, si tu opcion
le fuese valida, creo que convendria que la cambiase por =>>
ListBox1.TopIndex = ListBox1.ListCount - 1

lo dicho, solo por evitar algun que otro quebradero de cabeza a OP

un saludo
Ivan



hola Ivan:
aunque parece ser que el tema esta resuelto...:-)
me permito preguntarte lo siguiente.
1.-¿que problema te da utilizar la linea de codigo que propuse?
[ListBox1.TopIndex = ListBox1.ListCount]
2.¿ya probaste usando ambas?,por uq a mi me da el mismo resultado y/o
tal vez exista algo que no entiendo/desconozco sobre esta propiedad y
me gustaria que comentaras al respecto
3.-[esta no es pregunta] cuando lei tu repuesta mi primer reaccion fue
irme a la ayuda y checando la propiedad efectivamente se menciona que
la propiedad Listcount es mayor a 1(uno) que la propiedad listIndex,
ya que los números de índice empiezan en 0 y el número de elementos
empieza en 1.
sin embargo no veo el uso de listindex en el ejemplo (por lo menos en
el mio),ademas que en la *practica* ,ambas soluciones (mi propuesta y
la *adecuacion que le realizaste*)dan el mimo resultado.
4.-Tampoco adverti algun error que se genere por usar
ListBox1.TopIndex = ListBox1.ListCount !!!!,con lo que supongo que mi
propuesta seria valida !!!.,solo me inquieta una cosa ¿cual seria el
enredo ?
5.-por otra parte y consideranto tu opinion (utilizar
ListBox1.TopIndex = ListBox1.ListCount-1),probe esta otra opcion que
hace lo mismo que las anteriores con la novedad de que selecciona el
elemento.:-) ,pues aqui si encuentro una diferencia practica.
ListBox1.Selected(ListBox1.ListCount - 1) = True

salu2 Al
Respuesta Responder a este mensaje
#4 Ivan
08/10/2007 - 20:29 | Informe spam
hola,

parece que tienes razon, disculpa, pero estaba convencido de que
funcionaria como el listindex

un saludo
Ivan
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida