Ver las NORMAS de estos Foros Web ZackYFileS Chat ZackYFileS Agregar a Favoritos Contactar con Administrador
 
 

TU PUBLICIDAD AQUÍ!!
Navegación
Retroceder   Foros ZackYFileS >
OTROS TEMAS DE INTERES - INTERNET:
> PROGRAMACIÓN Lenguajes: Visual Basic, C++, etc
Nombre de usuario
Contraseña
Configuración de UsuarioAyuda (FAQs)Nuevos PostsBuscar


Respuesta
 
Herramientas
Antiguo 14/07/2006, 00:22   #1
DVB
Usuario Registrado
 
Fecha de ingreso: 01/abr/2004
Mensajes: 34
DVB está en el buen camino
Listboxs sincronizados

Hola aprovechando que ahora tenemos foro de programacion os voy a plantear un problema que tengo en un proyecto que estoy desarrollando en C# .Net.

Tengo 3 listbox y un vscrollbar independiente de los 3 listbox. Pues quiero que el vscrollbar independiente mueva los 3 listbox a la vez (el scroll, vamos)

he subido el archivo a http://www.multiupload.com/?d=JF08Z0PZ para que entendais mejor lo que os digo. El proyecto esta echo en .net 2003

Gracias de antemano.
Saludos
DVB está desconectado
Respuesta rápida a este mensaje
Responder Citando Subir
Publicidad: Conoce las ofertas de ANUNCIATE
Antiguo 14/07/2006, 21:08   #2
Efirenet
Usuario Activo
 
Avatar de Efirenet
 
Fecha de ingreso: 06/dic/2004
Mensajes: 84
Efirenet llegará a ser famoso muy pronto
Hola, se puede simular scroll seleccionando un item del listBox que no está visible. Así, si el listBox está mostrando los items del 1 al 10 y le das al botón de bajar del ScrollBar, pues selecciona en ese listbox el elemento 11. Con eso consigues que haga scroll hacia abajo. Hacia arriba es parecido: si estás mostrando del 5 al 15 y le das arriba, pues selecciona el 4 y verás un scroll hacia arriba.

Para cambiar el item seleccionado del listbox usa la propiedad SelectedIndex y si no quieres que aparezca seleccionado el item (para que de aspecto de que estás pulsando los botones), usa el método SelectedIndex poniendo a false el item que seleccionaste antes.

Un saludo
Efirenet está desconectado
Respuesta rápida a este mensaje
Responder Citando Subir
Antiguo 15/07/2006, 12:12   #3
ElZazu
Yerbagüena Pal Puchero
 
Avatar de ElZazu
 
Fecha de ingreso: 20/dic/2003
Mensajes: 5.810
ElZazu Poca gente ha conseguido tener esta reputaciónElZazu Poca gente ha conseguido tener esta reputaciónElZazu Poca gente ha conseguido tener esta reputaciónElZazu Poca gente ha conseguido tener esta reputaciónElZazu Poca gente ha conseguido tener esta reputaciónElZazu Poca gente ha conseguido tener esta reputaciónElZazu Poca gente ha conseguido tener esta reputaciónElZazu Poca gente ha conseguido tener esta reputaciónElZazu Poca gente ha conseguido tener esta reputaciónElZazu Poca gente ha conseguido tener esta reputaciónElZazu Poca gente ha conseguido tener esta reputación
Yo creo que es incluso más sencillo de implementar ese efecto.

En los [B]listBox [/B]existe la propiedad [B]TopIndex [/B]que indica el primer elemento que se visualiza en la parte de arriba, simplemente hay que 'sincronizar' esta propiedad del [B]listBox [/B]con la propiedad [B]Value [/B]del [B]vScrollBar[/B].

Es decir:

[CODE]private void vScrollBar1_Scroll(object sender, System.Windows.Forms.ScrollEventArgs e)
{
this.listBox1.TopIndex=this.vScrollBar1.Value-1; // -1 ya que el Index del listBox empieza en 0 y el Value del vScrollBar en 1
this.listBox2.TopIndex=this.vScrollBar1.Value-1;
this.listBox3.TopIndex=this.vScrollBar1.Value-1;
}[/CODE]

Tambien habría que modificar los valores del [B]vScrollBar[/B], y ponerle el [B]Minimun [/B]a 1 (desplazamiento corto) y el [B]Maximun [/B]a 20 (osea, a el número de valores que tenga el [B]listBox[/B]), con lo que añadiríamos este código al detras del [B]for [/B]del [B]Load [/B]del formulario:

[CODE]this.vScrollBar1.Maximum=this.listBox1.Items.Count-1; // Numero de elementos del listBox
this.vScrollBar1.Minimum=1;[/CODE]

Saludos
ElZazu está desconectado
Respuesta rápida a este mensaje
Responder Citando Subir
Antiguo 17/07/2006, 20:12   #4
DVB
Usuario Registrado
 
Fecha de ingreso: 01/abr/2004
Mensajes: 34
DVB está en el buen camino
Gracias de nuevo

Cuando ya tenia implementada la solucion que aportaba Efirenet he leido la de ElZazu y se me han saltado las lagrimas que solucion mas ingeniosa y sencilla.

Saludos
DVB está desconectado
Respuesta rápida a este mensaje
Responder Citando Subir
Publicidad: Conoce las ofertas de ANUNCIATE
Respuesta


Usuarios viendo actualmente este tema: 1 (0 usuarios registrados y 1 visitantes)
 

Permisos para publicar mensajes
No puedes crear nuevos temas
No puedes responder mensajes
No puedes subir archivos adjuntos
No puedes editar tus mensajes

Los BB code están Activado
Los Emoticones están Activado
El código [IMG] está Activado
El Código HTML está Desactivado

Ir al foro


!! ADVERTENCIAS !!: Las informaciones aquí publicadas NO CONTIENEN KEYS para la decodificación de ningún sistema: NO SON OPERATIVOS en sistemas SAT que precisen de su correspondiente suscripción.

ESTA TOTALMENTE PROHIBIDO EL USO DE ESTAS INFORMACIONES PARA LA MODIFICACIÓN O  DEFRAUDACIÓN DE SISTEMAS DE ACCESO CONDICIONAL.

ESTOS FOROS SON MODERADOS Y NO SE PERMITE LA PUBLICACIÓN DE INFORMACIONES ILEGALES POR PARTE DE LOS USUARIOS. EN CASO DE DETECTARSE ESTE TIPO DE INFORMACIONES, LOS USUARIOS SERÁN EXCLUIDOS DE ESTAS PÁGINAS.

USO DE COOKIES: Utilizamos COOKIES y de terceros para mejorar nuestros servicios y navegación por la web. Si continua navegando, consideramos que acepta su uso.  


La franja horaria es GMT +2. Ahora son las 14:44.


-------------------------------------------------------------------- --------------------------------------------------------------------

Powered por vBulletin™ Version 3.8.10
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.
Traducido por vBsoporte - vBulletin en español
Hispaservicios - J.G.C - 29112549T - Rio Cinca, 2, 30 (50180) SPAIN.
Todos los derechos reservados. Prohibida cualquier reproducion total o parcial.


Foros Patrocinados por anunciantes.