Jump to content
Fivewin Brasil

ITEM DE UMA COMBOBOX


gilbrodrigues

Recommended Posts

Ola pessoal,

Estou tendo dificuldades em mostrar um elemento de um array via combobox, pois mesmo dando refresh e update o conteudo que é da variavel não é mostrado na tela. Segue o programa abaixo:

-----------------------------------------------------------

REDEFINE COMBOBOX oxycmb VAR xcontat ITEMS xVetCli ID 4008 OF oDiag1 UPDATE // letra tela combo getobj

REDEFINE COMBOBOX oxycmb2 VAR lettercli ITEMS xvetAlfa ID 4025 OF oDiag1 UPDATE ON CHANGE ProcVisita(lettercli,@oDiag1,@oxycmb)

FUNCTION ProcVisita(letra,atuform,control)

// varobj pode ser NIL (null) nulo

PUBLIC xletra := letra

filearq := "PROPRIET"

(filearq)->(DBSETFILTER( {|| LEFT ((filearq)->NOME,1) == xletra} ))

xVetCli := {}

(filearq)->(dbGoTop())

WHILE ( !(filearq)->(EOF()) )

AADD(xVetCli, (filearq)->NOME)

(filearq)->(DBSKIP())

END

(filearq)->(dbSetfilter())

IF LEN(xVetCli) >= 01

xcontat := xVetCli[1] //

ENDIF

control:SetItems(xVetcli)

control:show()

control:update()

control:Refresh()

control:setfocus()

atuform:update()

atuform:refresh()

RETURN .T.

********************************************************

Note que a variavel XCONTAT (é que deve ser atualizada) é a que armazena o item selecionado do array/combo. Isso funciona.

Mas tem 'alguma coisa' que nao esta atualizando nem com refresh nem update o objeto desta variavel é atualizado somente o controle da combo funciona perfeitamente.

Se alguem tiver uma sugestão..

Editado por - gilbrodrigues on 01/03/2011 12:43:56

Link to comment
Share on other sites

Ola pessoal,

Estou tendo dificuldades em mostrar um elemento de um array via combobox, pois mesmo dando refresh e update o conteudo que é da variavel não é mostrado na tela. Segue o programa abaixo:

-----------------------------------------------------------

REDEFINE COMBOBOX oxycmb VAR xcontat ITEMS xVetCli ID 4008 OF oDiag1 UPDATE // letra tela combo getobj

REDEFINE COMBOBOX oxycmb2 VAR lettercli ITEMS xvetAlfa ID 4025 OF oDiag1 UPDATE ON CHANGE ProcVisita(lettercli,@oDiag1,@oxycmb)

FUNCTION ProcVisita(letra,atuform,control)

// varobj pode ser NIL (null) nulo

PUBLIC xletra := letra

filearq := "PROPRIET"

(filearq)->(DBSETFILTER( {|| LEFT ((filearq)->NOME,1) == xletra} ))

xVetCli := {}

(filearq)->(dbGoTop())

WHILE ( !(filearq)->(EOF()) )

AADD(xVetCli, (filearq)->NOME)

(filearq)->(DBSKIP())

END

(filearq)->(dbSetfilter())

IF LEN(xVetCli) >= 01

xcontat := xVetCli[1] //

ENDIF

control:SetItems(xVetcli)

control:show()

control:update()

control:Refresh()

control:setfocus()

atuform:update()

atuform:refresh()

RETURN .T.

********************************************************

Note que a variavel XCONTAT (é que deve ser atualizada) é a que armazena o item selecionado do array/combo. Isso funciona.

Mas tem 'alguma coisa' que nao esta atualizando nem com refresh nem update o objeto desta variavel é atualizado somente o controle da combo funciona perfeitamente.

Se alguem tiver uma sugestão..

Editado por - gilbrodrigues on 01/03/2011 12:43:56

Link to comment
Share on other sites

Será que o objeto CONTROL que vc usa, não é uma palavra reservada?

muda o objeto CONTROL para outra, só pra ver.

Essa é uma dica.

Pompeo

Guaratinguetá - SP

(12) 8829-8088

E-Mail: mkyx@ig.com.br

pardes.mky@hotmail.com

MSN:pardes.mky@hotmail.com

www.adentech.com.br

www.rmahost.com

xH 1.1.0 Hb 8.02 - BCC 55

Link to comment
Share on other sites

citação:

Será que o objeto CONTROL que vc usa, não é uma palavra reservada?

muda o objeto CONTROL para outra, só pra ver.

Essa é uma dica.

Pompeo

Guaratinguetá - SP

(12) 8829-8088

E-Mail: mkyx@ig.com.br

pardes.mky@hotmail.com

MSN:pardes.mky@hotmail.com

www.adentech.com.br

www.rmahost.com

xH 1.1.0 Hb 8.02 - BCC 55


id=quote>id=quote>

Farei o teste. Obrigado pela dica.

FIZ O TESTE porem nao funcionou !

Editado por - gilbrodrigues on 01/03/2011 14:12:50

Link to comment
Share on other sites

xVetCli não é LOCAL não né ?

E por que aquela xLetra Public ali ? Cada vez que esta rotina é chamada você "redeclara" ela.

Tenta passar a xVetCli como parâmetro por valor (sem arroba). Arrays sempre vão como referência.

a.png

Luis Fernando Jr. (Luisão)

Leme/SP

--

FWH8.01 + SQLLIB 1.9d + xHB 1.10 + xDev 0.65 + @SAY

juninho.luisao@gmail.com

juninho_luisao@hotmail.com

Skype luis.fernando.jr

Link to comment
Share on other sites

  • 1 year later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...