Combox Enlasados

Post Reply
dobfivewin
Posts: 325
Joined: Sun Feb 03, 2008 11:04 pm
Location: Argetnina

Combox Enlasados

Post by dobfivewin »

Estimados

Como puedo enlasar 2 o mas combox

La idea es según el contenido que se seleccione en un Combox se me actualice el siguiente Combox, en base a una funcion que hace dicha actualizacion don los datos salen del primer Combox

mmm fui claro

muchas gracias

David
Argentina
dobfivewin
Posts: 325
Joined: Sun Feb 03, 2008 11:04 pm
Location: Argetnina

Re: Combox Enlasados

Post by dobfivewin »

Aca paso la rutina

Code: Select all

  @  1, 10 COMBOBOX oCbx_001 VAR cCbx_001 PROMPTS mCbx_001 ;
                    STYLE CBS_DROPDOWN ;
                    SIZE 80,40 ;
                    ON CHANGE ( mCbx_002:=ArmaTipoDocu(VAL(substr(cCbx_001,201,18))) ,;
                                cCbx_002:=mCbx_002[1] ,;
                                oCbx_002:refresh() ) ;
                    VALID     ( mCbx_002:=ArmaTipoDocu(VAL(substr(cCbx_001,201,18))) ,;
                                cCbx_002:=mCbx_002[1] ,;
                                oCbx_002:refresh() , .T. ) ;
                    Of oDlgCar

  @  2, 10 COMBOBOX oCbx_002 VAR cCbx_002 PROMPTS mCbx_002 UPDATE  ;
                    SIZE 80,40 ;
                    Of oDlgCar

la variable mCbx_002 la actualizo con los Items que debo mostrar en el segundo COMBOX.

Haciendo control dicha variable se Actualiza pero NO se muestra en el 2° COMBOX


David
Argetnina
User avatar
carlos vargas
Posts: 1421
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua

Re: Combox Enlasados

Post by carlos vargas »

use los methodos
para reasignar items

SetItems( aItems, aList )

salu2
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
dobfivewin
Posts: 325
Joined: Sun Feb 03, 2008 11:04 pm
Location: Argetnina

Re: Combox Enlasados

Post by dobfivewin »

Hola estimados...

Como me sujeris hacerlo ?

David
jbrita
Posts: 425
Joined: Mon Jan 16, 2006 3:42 pm

Re: Combox Enlasados

Post by jbrita »

Amigo prueba asi

REDEFINE COMBOBOX aGetS[12] VAR fpago ITEMS forpago ID 112 OF oDlg;
ON CHANGE (CargaFormaPago(oDlg,@acDevuelve,fpago,aGets,nTotTot),aGetS[13]:SetItems(acDevuelve),aGets[13]:SetFocus(),xpagar:=0) UPDATE

REDEFINE COMBOBOX aGetS[13] VAR FPagar ITEMS acDevuelve ID 113 OF oDlg;
ON CHANGE (aGets[40]:Refresh(),aGets[35]:SetFocus(),Refrpago(fPagar,aGets,nTotTot) ) UPDATE


Saludos
User avatar
mmercado
Posts: 782
Joined: Wed Dec 19, 2007 7:50 am
Location: Salamanca, Gto., México

Re: Combox Enlasados

Post by mmercado »

Hola David:
dobfivewin wrote:La idea es según el contenido que se seleccione en un Combox se me actualice el siguiente Combox, en base a una funcion que hace dicha actualizacion don los datos salen del primer Combox
Aquí tienes un pequeño ejemplo funcional:

Code: Select all

#include "Fivewin.ch"

Function Main()

   Local oDlg, nVar, nVar1, aCbx[ 2 ], ;
         aArr := { "Uno", "Dos", "Tres" }, ;
         aUno := { "Uno Uno", "Uno Dos", "Uno Tres" }, ;
         aDos := { "Dos Uno", "Dos Dos", "Dos Tres" }, ;
         aTres := { "Tres Uno", "Tres Dos", "Tres Tres" }

   nVar := nVar1 := 1

   DEFINE DIALOG oDlg FROM 0, 0 TO 200, 200 PIXEL TITLE "Combos Enlazados"

   @ 10, 10 COMBOBOX aCbx[ 1 ] VAR nVar ITEMS aArr OF oDlg SIZE 40, 90 PIXEL ;
            ON CHANGE aCbx[ 2 ]:SetItems( If( nVar == 1, aUno, If( nVar == 2, aDos, aTres ) ) )

   @ 10, 50 COMBOBOX aCbx[ 2 ] VAR nVar1 ITEMS aUno OF oDlg SIZE 40, 90 PIXEL

   ACTIVATE DIALOG oDlg CENTERED

Return Nil
Un abrazo.

Manuel Mercado
manuelmercado at prodigy dot net dot mx
dobfivewin
Posts: 325
Joined: Sun Feb 03, 2008 11:04 pm
Location: Argetnina

Re: Combox Enlasados

Post by dobfivewin »

_ Vargas, jbrito y Manuel Mercado

MUCHAS GRACIAS

Me solucionaron el problema.

1000000 de gracias

david
argentina
User avatar
Jairo Barbosa
Posts: 188
Joined: Fri Jan 23, 2009 2:50 am
Location: Cali Valle Colombia
Contact:

Re: Combox Enlasados

Post by Jairo Barbosa »

Manuel

Saludo Cordial

Serias tan amable y me explicas como con tu ejemplo lo hago desde DBFs

Gracias Manuel

Un Abrazo

Jairo Barbosa
Post Reply