Veamos la utilidad de los control Listbox y DropDownListBox en el desarrollo de nuestras aplicaciones, sabemos que estos controles son contenedores de elementos, estos elementos pueden ser el contenido de una tabla por ejemplo el listado de Clientes, los ejemplos que acontinuación veremos no estan orientados a la utilización de una base de datos, esta caracteristica lo veremos en posteriores entradas; antes debemos saber las funciones y propiedades de los controles ya que serán muy importante a la hora de programar utilizando una base de datos. A continuación veamos el ejemplo:

Código fuente de la aplicación
Script Open de la ventana
/*Agregamos los elementos al control DropDownListBox*/ ddlb_producto.additem("Mouse") ddlb_producto.additem("Teclado") ddlb_producto.additem("Monitor") ddlb_producto.additem("Impresora") ddlb_producto.additem("Scanner") ddlb_producto.additem("WebCam")
Script Clicked del boton Agregar
lb_producto.additem(ddlb_producto.text) st_registro.text=string(lb_producto.totalitems())
Script Clicked del boton >
If lb_producto.selectedindex() < 0 Then Messagebox("Error","Seleccione un Registro") Else lb_tienda.additem(lb_producto.selecteditem()) lb_producto.deleteitem(lb_producto.selectedindex()) End If
Script Clicked del boton >>
Integer i For i=1 To lb_producto.totalitems() lb_producto.selectitem(i) lb_tienda.additem(lb_producto.selecteditem()) Next lb_producto.reset()
Script para el boton <
If lb_producto.selectedindex() > 0 Then lb_producto.deleteitem(lb_producto.selectedindex()) ElseIf lb_tienda.selectedindex() > 0 Then lb_tienda.deleteitem(lb_tienda.selectedindex()) ElseIf lb_producto.selectedindex() < 0 Or lb_tienda.selectedindex() < 0 Then Messagebox("Error","Seleccione un Registro") End If
Script para el boton <<
If lb_producto.selectedindex()= -1 And lb_tienda.selectedindex()= -1 Then Messagebox("Error","seleccione La lista a eliminar") Else If lb_producto.selectedindex() >= 1 Then lb_producto.reset() End If If lb_tienda.selectedindex() >= 1 Then lb_tienda.Reset() End If End If
En el siguiente ejemplo veremos el control ListView este es mas usados para la vizualización de registros de una tabla, por ejemplo el listado de los productos (CodProducto, Descripcion, PrecioUnitario,Stock, etc ) como he mencionado al inicio de este post, es conocer las funciones y propiedades de estos controles. Veamos los siguientes ejemplos del control listview:

Código Fuente de la aplicación
Script Open de la Ventana
/*Conf del control Listview*/ lv_Productos.addcolumn( "Codigo",left!,250) lv_Productos.addcolumn( "Descripción",left!,950) lv_Productos.addcolumn( "Precio",left!,400) lv_Productos.view=ListViewReport! lv_Productos.fullrowselect=true /*fullrowselect selecciona toda la fila*/
Script Clicked para el Boton Agregar
lv_Productos.additem( sle_codigo.text,1) /*Utilizamos la funcion additem para agregar Item a la PRIMERA COLUMNA */ lv_Productos.setitem( lv_Productos.totalitems( ),2,sle_descripcion.text) lv_Productos.setitem( lv_Productos.totalitems( ),3,sle_precio.text) /*setitem para agregar elementos apartir de la SEGUNDA columna */ st_totalElementos.text=String(lv_productos.totalitems( )) /*totalitems nos devuelve el total de filas en el control lv_productos*/
Script Clicked para el boton Eliminar
lv_Productos.deleteitem( lv_Productos.selectedindex( )) st_totalElementos.text=String(lv_productos.totalitems( ))

Código Fuente de la aplicación
Script Clicked para el boton Ejecutar
int ic /*Indice de la columna*/ lv_elementos.deletecolumns( ) lv_elementos.deleteitems( ) integer columna,nummax columna=integer(em_columna.text) nummax=integer(em_numero.text) //agregamos numero de columnas For ic=1 To columna lv_elementos.addcolumn( "C" + string(ic), center!,200) Next /*Agregamos los elementos a cada fila*/ int nume,i,j Do While nume < nummax nume +=1 lv_elementos.additem( string(nume),1)/*Agregamos los elementos*/ If nume < nummax Then For j=2 To columna/**/ nume +=1 If Not nume > nummax Then lv_elementos.setitem( lv_elementos.totalitems( ),j,string(nume)) End If Next End If Loop


admin Under
Tags: 

como agregaria columnnas y filas dentro de un listview utilizando em_1 para columans y em_2 para las filas
HOLA, TENGO UN LISTVIEW EN POWER BUILDER, CON 3 COLUMNAS, COMO PUEDO SUMAR LOS VALORES DE UNA D ESAS COLUMNAS Y OBTENER EL TOTAL DE ESA SUMA EN UNA CAJA D TEXTO?
Muchas Gracias por tu respuesta, pero tengo otra pregunta, es posible hacer la busqueda en una datawindows entre horas, m explico, yo se hacer busquedas especificas en un datawindows, pero por ejemplo,
se hizo una compra a la 1:00pm otra a las 3:00pm
y yo quiero que el datawindows solo muestre la compra que se realizo en un intervalo de tiempo es decir, que si el intervalo esta entre las 2pm y 4pm debe mostrar solo la compra de las 3:00pm.
intente con un if entre los intevalos vs la hora pero cuando pido q cumpla las condiciones mayor igual o menor igual no retorna nada,
gracias de antemano
Hola, personalmente no he provado ese tipo de consulta, te sugiero que hagas uso de la opción Retrieval Arguments de DateTime o Time cuando generes tu DataWindow, Saludos.
man plz puedes poner un manual
llenar un DropDownListBox desde SQL server
saludos.
hola gracias por esta pagina…. mi consulta es .. mipregunta es como se hace una busqueda en lv y utilizando obdc … codigo de proveedor,razon social y ruc y quisera pasarlo a un sle_ que esta en otro formulario ..
gracias por la respuesta….
ESTOY UTILIZANDO POWER BUILDER 11
GRACIAS
Hola elit, antes visita esta otra página ejemplos, te sugiero que hagues tus preguntas en el foro scf