ordenar listbox - por favor
necesito que el usuario pueda ordenar los datos con el mouse que estan en un list box
por favor,
gracias
por favor,
gracias
Hola.
El componente listbox tiene una propiedad que se llama sorted, la cual ordena los elementos del listbox en orden alfab茅tico.
Cuano crees el evento con el mouse, solo tienes que cambiar la propiedad.
El componente listbox tiene una propiedad que se llama sorted, la cual ordena los elementos del listbox en orden alfab茅tico.
Cuano crees el evento con el mouse, solo tienes que cambiar la propiedad.
hola puni, acabo de leer del otro post que no te funcionaba lo que te dije, y debo decir que me sorprende un poco porque a m铆 s铆 me funciona.
Hagamos una cosa, abre un proyecto nuevo y a帽ade s贸lo un ListBox, con su nombre por defecto, List1, entras a la edici贸n del c贸digo, borras todo el c贸digo que haya, y pegas todo el c贸digo que te pongo m谩s abajo.
Si no te funciona miraremos a ver que puede ser, porque si no hace lo que quieres 茅s que no entendimos bi茅n lo que quer铆as.
Pru茅balo a ver si hay suerte, ya dir谩s algo:
Option Explicit
Dim Seleccionado As Integer
Private Sub Form_Load()
Dim Cont As Integer
For Cont = 1 To 15
List1.AddItem "Elemento " & Cont
Next
End Sub
Private Sub List1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Seleccionado = List1.ListIndex
End Sub
Private Sub List1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim Elemento As String
If Seleccionado = List1.ListIndex Then Exit Sub
If Button = vbLeftButton Then
Elemento = List1.List(Seleccionado)
List1.List(Seleccionado) = List1.List(List1.ListIndex)
List1.List(List1.ListIndex) = Elemento
Seleccionado = List1.ListIndex
End If
End Sub
Hagamos una cosa, abre un proyecto nuevo y a帽ade s贸lo un ListBox, con su nombre por defecto, List1, entras a la edici贸n del c贸digo, borras todo el c贸digo que haya, y pegas todo el c贸digo que te pongo m谩s abajo.
Si no te funciona miraremos a ver que puede ser, porque si no hace lo que quieres 茅s que no entendimos bi茅n lo que quer铆as.
Pru茅balo a ver si hay suerte, ya dir谩s algo:
Option Explicit
Dim Seleccionado As Integer
Private Sub Form_Load()
Dim Cont As Integer
For Cont = 1 To 15
List1.AddItem "Elemento " & Cont
Next
End Sub
Private Sub List1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Seleccionado = List1.ListIndex
End Sub
Private Sub List1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim Elemento As String
If Seleccionado = List1.ListIndex Then Exit Sub
If Button = vbLeftButton Then
Elemento = List1.List(Seleccionado)
List1.List(Seleccionado) = List1.List(List1.ListIndex)
List1.List(List1.ListIndex) = Elemento
Seleccionado = List1.ListIndex
End If
End Sub
