FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Ayuda Combo Box
Posts: 28
Joined: Tue Mar 01, 2011 12:39 PM
Ayuda Combo Box
Posted: Wed Jul 10, 2013 08: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

Posts: 120
Joined: Wed Mar 11, 2009 07:32 PM
Re: Ayuda Combo Box
Posted: Wed Jul 10, 2013 08: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. Obreg贸n, Sonora, M茅xico
chino72vale@hotmail.com
Fivewin 24.04, Harbour 3.3, xharbour 1.2.1, Fivelinux, Visual Estudio 2022
Oracle Api Rest, SDK Contpaq, Facturaci贸n Electr贸nica, XML DIOT 2025
Posts: 28
Joined: Tue Mar 01, 2011 12:39 PM
Re: Ayuda Combo Box
Posted: Wed Jul 10, 2013 09: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)

Posts: 120
Joined: Wed Mar 11, 2009 07:32 PM
Re: Ayuda Combo Box
Posted: Wed Jul 10, 2013 10:51 PM
hola,
este es un ejemplo funcional

Code (fw): Select all Collapse
// 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. Obreg贸n, Sonora, M茅xico
chino72vale@hotmail.com
Fivewin 24.04, Harbour 3.3, xharbour 1.2.1, Fivelinux, Visual Estudio 2022
Oracle Api Rest, SDK Contpaq, Facturaci贸n Electr贸nica, XML DIOT 2025
Posts: 601
Joined: Wed Jul 04, 2007 03:51 PM
Re: Ayuda Combo Box
Posted: 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
Posts: 120
Joined: Wed Mar 11, 2009 07:32 PM
Re: Ayuda Combo Box
Posted: Thu Jul 11, 2013 04: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. Obreg贸n, Sonora, M茅xico
chino72vale@hotmail.com
Fivewin 24.04, Harbour 3.3, xharbour 1.2.1, Fivelinux, Visual Estudio 2022
Oracle Api Rest, SDK Contpaq, Facturaci贸n Electr贸nica, XML DIOT 2025
Posts: 28
Joined: Tue Mar 01, 2011 12:39 PM
Re: Ayuda Combo Box
Posted: Fri Jul 19, 2013 03:12 AM
benjiben143 wrote:hola,
este es un ejemplo funcional

Code (fw): Select all Collapse
// 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...
Posts: 120
Joined: Wed Mar 11, 2009 07:32 PM
Re: Ayuda Combo Box
Posted: Fri Jul 19, 2013 02:30 PM

hola buen dia

dale el valor a la variable del combobox

y refresh al objecto de combobox

sas

Benjamin Casarrubias Moreno
Cd. Obreg贸n, Sonora, M茅xico
chino72vale@hotmail.com
Fivewin 24.04, Harbour 3.3, xharbour 1.2.1, Fivelinux, Visual Estudio 2022
Oracle Api Rest, SDK Contpaq, Facturaci贸n Electr贸nica, XML DIOT 2025
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Ayuda Combo Box
Posted: Fri Jul 19, 2013 02: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
Posts: 28
Joined: Tue Mar 01, 2011 12:39 PM
Re: Ayuda Combo Box
Posted: 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 ::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 } )

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

::Update()

return NIL
Posts: 120
Joined: Wed Mar 11, 2009 07:32 PM
Re: Ayuda Combo Box
Posted: Tue Jul 23, 2013 03: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 (fw): Select all Collapse
#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. Obreg贸n, Sonora, M茅xico
chino72vale@hotmail.com
Fivewin 24.04, Harbour 3.3, xharbour 1.2.1, Fivelinux, Visual Estudio 2022
Oracle Api Rest, SDK Contpaq, Facturaci贸n Electr贸nica, XML DIOT 2025
Posts: 28
Joined: Tue Mar 01, 2011 12:39 PM
Re: Ayuda Combo Box
Posted: Tue Jul 23, 2013 07: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 (fw): Select all Collapse
#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

Continue the discussion