Consultas, desarrollo de programas y petición de presupuestos:

domingo, 28 de agosto de 2011

Listbox: gestionarlo

Aqui os enseño parte del código necesario para gestionar un listbox: borrar, insertar, mover (al final, abajo, arriba, al inicio), como aparece en el siguiente pantallazo:
Pantallazo-Editando columnas

PUBLIC SUB Form_Open()
ME.center
Ftitulos.Caption = "Editando "
TextBox1.SetFocus
END
PUBLIC SUB ToggleButtonArriba_Click()
DIM intercambio AS String
IF listbox1.index > 0 THEN
intercambio = ListBox1[ListBox1.index - 1].text
ListBox1[ListBox1.index - 1].text = ListBox1[ListBox1.index].text
ListBox1[ListBox1.index].text = intercambio
listbox1[listbox1.index - 1].Selected = 1
ENDIF
END
PUBLIC SUB ToggleButtonInicio_Click()
DIM a AS Integer
FOR a = 0 TO listbox1.Index - 1
ToggleButtonArriba_Click()
NEXT
END
PUBLIC SUB ToggleButtonBaja_Click()
DIM intercambio AS String
IF listbox1.index < listbox1.count - 1 THEN
intercambio = ListBox1[ListBox1.index + 1].text
ListBox1[ListBox1.index + 1].text = ListBox1[ListBox1.index].text
ListBox1[ListBox1.index].text = intercambio
listbox1[listbox1.index + 1].Selected = 1
ENDIF
END
PUBLIC SUB ToggleButtonFin_Click()
DIM a AS Integer
FOR a = listbox1.Index TO listbox1.count
ToggleButtonBaja_Click()
NEXT
END
PUBLIC SUB TextBox1_KeyPress()
IF (key.Code = key.Enter OR key.Code = key.Return) AND TextBox1.text "" THEN
insertar.SetFocus
ENDIF
END
PUBLIC SUB insertar_Click()
ListBox1.Add(TextBox1.text)
TextBox1.text = ""
TextBox1.SetFocus
END
PUBLIC SUB borrar_Click()
ListBox1.Remove(ListBox1.Index)
END

Propiedades utilizadas.
listbox1.index: hace referencia al indice actualmente seleccionado
listbox1.remove(indice): para borrar el dato que este en el lugar indicado por indice
listbox1.add(“texto”): añade al listbox1 “texto”
listbox1.count: nos dice el numero de datos que contiene el listbox
Otra orden interesante es .setfocus que hace que el foco (cursor) se vaya al boton, textbox o cualquier control que deseemos.

No hay comentarios:

Publicar un comentario