Ayuda Combo Box

Ayuda Combo Box

Postby macato » Wed Jul 10, 2013 8:05 pm

Fivewiner

favor alguien me echa una mano... tengo un dialog donde cargo en un combobox datos de direcciones, de un cliente.. lo que necesito es que cuando se cambie de cliente en el mismo dialog.. se refresquen los datos del combobox con los datos del nuevo cliente..


DEFINE Dialog ::oDlg Resource .....
Redefine Get ::oGet[02] VAR ::vRut Id 102 Of ::oDlg picture "@R 99.999.999-!" valid { datos( ::vRut} )

Redefine ComboBox ::oCmb VAR ::vCmb Id 131 Of ::oDlg Items ::aCmb[01] Update

Activate Dialog ::oDlg....

method Datos ()
aqui lleno los nuevos datos del combo....
aadd( ::aCmb, { direccion1, direccion2} )

::oCmb:Update()
::oCmb:Refresh()
return NIL


alguna sugerencia se los agradezco.. llevo un ratotote con esta cosaaa

salu2

Tomas
macato
 
Posts: 28
Joined: Tue Mar 01, 2011 12:39 pm

Re: Ayuda Combo Box

Postby benjiben143 » Wed Jul 10, 2013 8:21 pm

hola wen dia

oCombomaestro:Setitems(adatos)
oCombomaestro:refresh()


ya que tienes los datos nuevos

ay que agregarlos con ocombomaestro:setitems(adatos)
y luego refrescar

saludos
Benjamin Casarrubias Moreno
Cd. Obregon, Sonora, Mexico
chino72vale@hotmail.com
Fivewin 16.05, Harbour 3.2, xharbour 1.2.1, Fivelinux, visual estudio 2013
benjiben143
 
Posts: 114
Joined: Wed Mar 11, 2009 7:32 pm
Location: Obregon, Sonora, Mexico

Re: Ayuda Combo Box

Postby macato » Wed Jul 10, 2013 9:28 pm

Hola gracias

lo agregue como indicas

method Datos ()
aqui lleno los nuevos datos del combo....
aadd( ::aCmb, { direccion1, direccion2} )

::oCmb:Setitems(::aCmb)
::oCmb:Refresh()

Return NIL

pero me marca el siguiente error

Application
===========
Path and name: F:\Respaldos\Dropbox\app\FastTackV7.0\Bin\Fast Track 7.0.Exe (32 bits)
Size: 5,342,720 bytes
Time from start: 0 hours 0 mins 14 secs
Error occurred at: 10/07/2013, 17:24:30
Error description: Error BASE/2022 Argument error: ALLTRIM
Args:
[ 1] = A { ... }

Stack Calls
===========
Called from: => ALLTRIM(0)
Called from: COMBOBOX.PRG => (b)TCOMBOBOX:DEFAULT(0)
Called from: => ASCAN(0)
Called from: COMBOBOX.PRG => TCOMBOBOX:DEFAULT(0)
Called from: COMBOBOX.PRG => (b)TCOMBOBOX:TCOMBOBOX(0)
Called from: COMBOBOX.PRG => TCOMBOBOX:SETITEMS(0)
Called from: FT600b.prg => FT600:DATOS(1362) //llamado a linea ::oCmb:Setitems(::aCmb)
macato
 
Posts: 28
Joined: Tue Mar 01, 2011 12:39 pm

Re: Ayuda Combo Box

Postby benjiben143 » Wed Jul 10, 2013 10:51 pm

hola,
este es un ejemplo funcional

Code: Select all  Expand view

// This sample shows how to create a Combo Test.

#include "FiveWin.ch"

//----------------------------------------------------------------------------//

function Main()

   local oDlg, oCbx, cCbx:="aaa"
   local cItem1 := {"aaa","bbb","ccc"}
   local cItem2 := {"1","2","3"}
   local citem3
   
   citem3:=citem1
   DEFINE DIALOg oDlg title "TestCombo"

    @ 1,  1 combobox oCbx var ccbx items citem3  size 60, 80 of odlg update
   
   
   @ 2, 1 BUTTON "cambiar aa" SIZE 40, 10  OF oDlg action ( citem3:=citem1,  ocbx:setitems(citem3) , ocbx:refresh() )
   @ 3, 1 BUTTON "cambiar 1" SIZE 40, 10  OF oDlg  action ( citem3:=citem2,  ocbx:setitems(citem3) , ocbx:refresh() )
   ACTIVATE DIALOG oDlg CENTERED

return nil

//----------------------------------------------------------------------------//
 
Benjamin Casarrubias Moreno
Cd. Obregon, Sonora, Mexico
chino72vale@hotmail.com
Fivewin 16.05, Harbour 3.2, xharbour 1.2.1, Fivelinux, visual estudio 2013
benjiben143
 
Posts: 114
Joined: Wed Mar 11, 2009 7:32 pm
Location: Obregon, Sonora, Mexico

Re: Ayuda Combo Box

Postby jrestojeda » Thu Jul 11, 2013 11:10 am

Hola...
Revisa también el método modify() de la clase combo.
Saludos,
Ojeda Esteban Eduardo.
Buenos Aires - Argentina.
FWH - PellesC - DBF/CDX - ADS - Gloriosos .Bat - MySql - C# .net - FastReport
Skype: jreduojeda
User avatar
jrestojeda
 
Posts: 593
Joined: Wed Jul 04, 2007 3:51 pm
Location: Buenos Aires - Argentina

Re: Ayuda Combo Box

Postby benjiben143 » Thu Jul 11, 2013 4:50 pm

hola,,

elproblema es que el combo lo toma como texto y no numerico ,,,, convierte los numeros a texto

y con eso ya no marca error en alltrim la clase combobox


saludos
Benjamin Casarrubias Moreno
Cd. Obregon, Sonora, Mexico
chino72vale@hotmail.com
Fivewin 16.05, Harbour 3.2, xharbour 1.2.1, Fivelinux, visual estudio 2013
benjiben143
 
Posts: 114
Joined: Wed Mar 11, 2009 7:32 pm
Location: Obregon, Sonora, Mexico

Re: Ayuda Combo Box

Postby macato » Fri Jul 19, 2013 3:12 am

benjiben143 wrote:hola,
este es un ejemplo funcional

Code: Select all  Expand view

// This sample shows how to create a Combo Test.

#include "FiveWin.ch"

//----------------------------------------------------------------------------//

function Main()

   local oDlg, oCbx, cCbx:="aaa"
   local cItem1 := {"aaa","bbb","ccc"}
   local cItem2 := {"1","2","3"}
   local citem3
   
   citem3:=citem1
   DEFINE DIALOg oDlg title "TestCombo"

    @ 1,  1 combobox oCbx var ccbx items citem3  size 60, 80 of odlg update
   
   
   @ 2, 1 BUTTON "cambiar aa" SIZE 40, 10  OF oDlg action ( citem3:=citem1,  ocbx:setitems(citem3) , ocbx:refresh() )
   @ 3, 1 BUTTON "cambiar 1" SIZE 40, 10  OF oDlg  action ( citem3:=citem2,  ocbx:setitems(citem3) , ocbx:refresh() )
   ACTIVATE DIALOG oDlg CENTERED

return nil

//----------------------------------------------------------------------------//
 


funciona bien pero no logro hacer que el nuevo combobox comience desde la posición 1 siempre se inicia en la posición 0, generandome error
asi lo hago pero no funciona????? oCbx:nAt := 1

alguna sugerencia

gracias...
macato
 
Posts: 28
Joined: Tue Mar 01, 2011 12:39 pm

Re: Ayuda Combo Box

Postby benjiben143 » Fri Jul 19, 2013 2:30 pm

hola buen dia

dale el valor a la variable del combobox

y refresh al objecto de combobox


sas
Benjamin Casarrubias Moreno
Cd. Obregon, Sonora, Mexico
chino72vale@hotmail.com
Fivewin 16.05, Harbour 3.2, xharbour 1.2.1, Fivelinux, visual estudio 2013
benjiben143
 
Posts: 114
Joined: Wed Mar 11, 2009 7:32 pm
Location: Obregon, Sonora, Mexico

Re: Ayuda Combo Box

Postby Antonio Linares » Fri Jul 19, 2013 2:55 pm

Macato,

Cual es la posición cero ? La primera posición del combobox sería la 1.

Te refieres a que se va a la 2 ?

Tendrias que asignar a ::vCmb el valor del primer elemento del array
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41405
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Ayuda Combo Box

Postby macato » Tue Jul 23, 2013 10:17 am

Gracias

Antonio Linares wrote:Macato,

Cual es la posición cero ? La primera posición del combobox sería la 1.

Te refieres a que se va a la 2 ?

Tendrias que asignar a ::vCmb el valor del primer elemento del array


Antonio,

Efectivamente tendría que ser la posición 1, incluso fuerzo el objeto ::oCmb:nAt := 01 a esa posición, pero aun así en el combobox no se muestran la información del primer dato contenido en el... , la primera información se muestra vacía y a continuación la información del combobox que se genero a partir del array...


DEFINE Dialog ::oDlg Resource .....
Redefine Get ::oGet[02] VAR ::vRut Id 102 Of ::oDlg picture "@R 99.999.999-!" valid { datos( ::vRut} )
Redefine ComboBox ::oCmb VAR ::vCmb Id 131 Of ::oDlg Items ::aCmb[01] Update

Activate Dialog ::oDlg....

method Datos ()
aqui lleno los nuevos datos del combo....
aadd( ::aCmb, { codigo, direccion1, comuna, ciudad } )

::oCmb:setitems(::aCmb[01])
::oCmb:Refresh()
::oCmb:nAt := 01

::oDlg:Update()

return NIL
macato
 
Posts: 28
Joined: Tue Mar 01, 2011 12:39 pm

Re: Ayuda Combo Box

Postby benjiben143 » Tue Jul 23, 2013 3:08 pm

este es el ejemplo que dependiendo el valor se va a la posicion del combo, si queremos que sea la primera posicion seria
ccbx:=citem2[1] // esto nos indica que ccbx va tener el primer valor
ocbx:refresh() // con esto refrescamos

ya seria validar isi hay datos en la posiscion 1

saludos

abajo el ejemplo



Code: Select all  Expand view
#include "FiveWin.ch"

//----------------------------------------------------------------------------//


function Main()

   local oDlg, oCbx, cCbx:="aaa"
   local cItem1 := {"aaa","bbb","ccc"}
   local cItem2 := {"1","2","3"}
   local citem3
   
   citem3:=citem1
   DEFINE DIALOg oDlg title "TestCombo"

    @ 1,  1 combobox oCbx var ccbx items citem3  size 60, 80 of odlg update
   
   
   @ 2, 1 BUTTON "cambiar aa" SIZE 40, 10  OF oDlg action ( citem3:=citem1,  ocbx:setitems(citem3) , ccbx:="bbb",ocbx:refresh() )
   @ 3, 1 BUTTON "cambiar 1" SIZE 40, 10  OF oDlg  action ( citem3:=citem2,  ocbx:setitems(citem3) , ccbx:="3",ocbx:refresh() )
   @ 2, 10 BUTTON "primero"   SIZE 40, 10  OF oDlg  action ( citem3:=citem2,  ocbx:setitems(citem3) , ccbx:=citem2[1],ocbx:refresh() )
   ACTIVATE DIALOG oDlg CENTERED

return nil

//---
 


saludos
Benjamin Casarrubias Moreno
Cd. Obregon, Sonora, Mexico
chino72vale@hotmail.com
Fivewin 16.05, Harbour 3.2, xharbour 1.2.1, Fivelinux, visual estudio 2013
benjiben143
 
Posts: 114
Joined: Wed Mar 11, 2009 7:32 pm
Location: Obregon, Sonora, Mexico

Re: Ayuda Combo Box

Postby macato » Tue Jul 23, 2013 7:00 pm

Ahora funciona perfecto!!! muchas gracias

benjiben143 wrote:este es el ejemplo que dependiendo el valor se va a la posicion del combo, si queremos que sea la primera posicion seria
ccbx:=citem2[1] // esto nos indica que ccbx va tener el primer valor
ocbx:refresh() // con esto refrescamos

ya seria validar isi hay datos en la posiscion 1

saludos

abajo el ejemplo



Code: Select all  Expand view
#include "FiveWin.ch"

//----------------------------------------------------------------------------//


function Main()

   local oDlg, oCbx, cCbx:="aaa"
   local cItem1 := {"aaa","bbb","ccc"}
   local cItem2 := {"1","2","3"}
   local citem3
   
   citem3:=citem1
   DEFINE DIALOg oDlg title "TestCombo"

    @ 1,  1 combobox oCbx var ccbx items citem3  size 60, 80 of odlg update
   
   
   @ 2, 1 BUTTON "cambiar aa" SIZE 40, 10  OF oDlg action ( citem3:=citem1,  ocbx:setitems(citem3) , ccbx:="bbb",ocbx:refresh() )
   @ 3, 1 BUTTON "cambiar 1" SIZE 40, 10  OF oDlg  action ( citem3:=citem2,  ocbx:setitems(citem3) , ccbx:="3",ocbx:refresh() )
   @ 2, 10 BUTTON "primero"   SIZE 40, 10  OF oDlg  action ( citem3:=citem2,  ocbx:setitems(citem3) , ccbx:=citem2[1],ocbx:refresh() )
   ACTIVATE DIALOG oDlg CENTERED

return nil

//---
 


saludos
macato
 
Posts: 28
Joined: Tue Mar 01, 2011 12:39 pm


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 36 guests