Como ordenar un MSFlexgrid

Iniciado por ReViJa, 3 Enero 2007, 21:28 PM

0 Miembros y 1 Visitante están viendo este tema.

ReViJa

Hola compañeros, hay alguna forma de ordenar un MSFlexgrid?
Me explico un poco mas, tengo un archivo secuencial con un campo fecha pero no estan ordenadas y a mi me gustaria que se mostrasen ordenadas en el MSFlexgrid.
Se puede?

No me sirve ordenar el archivo, heee.  :P

Un saludo y feliz año.
Javier.

CeLaYa

en un MSFlexgrid no se, pero porque mejor no usas un ListView, con la propiedad Sorted, ordenas cualquier columna

"La soledad es el elemento de los grandes talentos".
Cristina de Suecia (1626-1689) Reina de Suecia.

ReViJa

Gracias Celaya, pero queria ver si se podia con MSFlexgrid.

CeLaYa

Ejemplo de las propiedades Sort, TextMatrix (Control MSHFlexGrid)

El ejemplo siguiente utiliza las propiedades Sort y TextMatrix. Realiza una ordenación del control MSHFlexGrid según el valor de un control ComboBox. Para usar el ejemplo, coloque un control MSHFlexGrid y un control ComboBox en un formulario. Pegue el código siguiente en la sección Declaraciones y, a continuación, presione F5.

Nota   Si utiliza el control MSFlexGrid, sustituya "MSHFlexGrid1" por "MSFlexGrid1".


Private Sub Combo1_Click()
' Selecciona una columna según el método Sort.
Select Case Combo1.ListIndex
Case 0 To 2
MSHFlexGrid1.Col =1
Case 3 To 4
MSHFlexGrid1.Col =2
Case 4 To 8
MSHFlexGrid1.Col =1   
End Select
' Ordena según la propiedad Combo1.ListIndex.
MSHFlexGrid1.Sort =Combo1.ListIndex
End Sub
Private Sub Form_Load()
Dim i As Integer
' Llena el control MSFlexGrid con datos aleatorios.
MSHFlexGrid1.Cols =3 ' Crea tres columnas.
   
For i =1 To 11 ' Agrega diez elementos.
MSHFlexGrid1.AddItem ""
MSHFlexGrid1.Col =2
MSHFlexGrid1.TextMatrix(i, 1) =CualquierNombre(i)
MSHFlexGrid1.TextMatrix(i, 2) =Rnd()
Next i
' Llena el cuadro combinado con las opciones de orden.
With Combo1
.AddItem "flexSortNone" ' 0
.AddItem "flexSortGenericAscending" '1
.AddItem "flexSortGenericDescending" '2
.AddItem "flexSortNumericAscending" '3
.AddItem "flexSortNumericDescending" '4
.AddItem "flexSortStringNoCaseAsending" '5
.AddItem "flexSortNoCaseDescending" '6
.AddItem "flexSortStringAscending" '7
.AddItem "flexSortStringDescending" '8
.ListIndex =0
End With
End Sub
Private Function CualquierNombre(i As Integer) As String
Select Case i
Case 1
SomeName ="Ana"
Case 2
SomeName ="Carlos"
Case 3
SomeName ="Sofía"
Case 4
SomeName ="Antonio"
Case 5
SomeName ="Elena"
Case 6
SomeName ="Laura Díaz"
Case 7
SomeName ="María Del Valle"
Case 8
SomeName ="Pablo"
Case 9
SomeName ="Julia"
Case 10
SomeName ="Manuel"
Case 11
SomeName ="Ricardo"
End Select
End Function




Esto lo saque de la ayuda de VB, espero te sirva de algo
"La soledad es el elemento de los grandes talentos".
Cristina de Suecia (1626-1689) Reina de Suecia.

ReViJa

ok, gracias... examinare la propiedad sort.