[RESUELTO] Cargar ListBox según resultado de ComboBox

Desarrollo de Macros y programación en UNO, usar las API, llamar programas externos...
Responder
Chelo2
Mensajes: 103
Registrado: Mié Ago 14, 2013 4:25 am
Ubicación: Lomas de Zamora, Buenos Aires, Argentina

[RESUELTO] Cargar ListBox según resultado de ComboBox

Mensaje por Chelo2 »

Estoy queriendo cargar datos en un ListBox según el resultado de la opción elegida en un ComboBox. Para ello utilizo el siguiente código en el evento Texto Modificado del combox:

Código: Seleccionar todo

Sub Carga_Motivos

'CARGA LISTBOX MOTIVOS
	oControl2 = oDialogo.getControl( "LBX_Motivos" )	
	HojaDatos = ThisComponent.getSheets.getByName( "Rechazos" )
		
	Select Case oControl.Text
		Case "Solicitud Inscripción de Persona Jurídica"	
			co1 = 29	
			goto salta						
		Case "Solicitud Inscripción de Personas Físicas"
			co1 = 67
			goto salta			
                 End Select
		
		salta:		
		Do Until HojaDatos.getCellByPosition(1,co1).getString = ""
		oControl2.addItem( HojaDatos.getCellByPosition(1,co1).getString, oControl2.getItemCount)
		co1 = co1 + 1
		Loop
	
End Sub

Funciona bien y me carga los motivos según la opción elegida. Pero cuando elijo otra opción de tema, los nuevos datos no reemplazan a los que estaban sino que se agregan. Entiendo que al inicio de la nueva opción debería vaciar el ListBox, pero he probado miles de formas y no le encuentro la vuelta.

Envio una copia del archivo de ejemplo por si alguien me puede dar una mano.

En este mismo punto tengo otra duda que abriré otro hilo para la misma.

Muchas gracias.

Chelo2
Adjuntos
ListBox_segun_ComboBox.ods
(16.31 KiB) Descargado 495 veces
Última edición por Chelo2 el Vie May 16, 2014 11:30 am, editado 1 vez en total.
OpenOffice 4.1.3 en Windows 7
FJCC-ES
Mensajes: 873
Registrado: Mié Mar 25, 2009 1:19 am
Ubicación: Colorado, USA

Re: Cargar ListBox según resultado de ComboBox

Mensaje por FJCC-ES »

Puede vaciar el ListBox con oControl2.removeItems( posición, cantidad)

Código: Seleccionar todo

...
	End Select
		
		salta:
		oControl2.removeItems(0, oControl2.ItemCount)		
		Do Until HojaDatos.getCellByPosition(1,co1).getString = ""
		oControl2.addItem( HojaDatos.getCellByPosition(1,co1).getString, oControl2.getItemCount)
		co1 = co1 + 1
		Loop
	
End Sub
Chelo2
Mensajes: 103
Registrado: Mié Ago 14, 2013 4:25 am
Ubicación: Lomas de Zamora, Buenos Aires, Argentina

Re: Cargar ListBox según resultado de ComboBox

Mensaje por Chelo2 »

Siii.. muchas gracias!!! funcionó perfectamenteee!!

Un saludo grande desde Buenos Aires, Argentina.

Chelo2
OpenOffice 4.1.3 en Windows 7
Responder