HBQT: Como gravar dados e recuperar dados de forms
Enviado: 04 Jul 2012 15:07
Pessoal, estou usando HBQT juntamente com o QT Design para criar formulários. Os resultados tem sido interessantes, apesar de bem básicos ainda. Porém estou com uma dúvida. Como fazer para recuperar atribuir valores a objetos de formulários usando a HBQT ?
Aqui mesmo no fórum aprendi como atribuir uma data a um objeto QDate.
Na tentativa e erro consegui "popular" um combobox com seus valores chave definidos por mim.
Seguem os exemplos para quem quiser :
24 // Data de hoje como padrão
25 oData_Mov := oWndForm:q_data_mov()
26 oData_Mov:setDate( QDate( YEAR(DATE()) , MONTH( DATE() ) , DAY( DATE() ) ) )
27
28 Agora preencho um combobox a partir de um array multidimensional chamado aLocalOrigem
36 FOR x := 1 TO LEN( aLocalOrigem[2] ) // Percorro o array que está em aLocalOrigem[2]
37 // Preencho o combo onde ID_LOCAL = 1 e DESCRICAO_LOCAL = 2
38 oIdLocalOrigem:addItem( aLocalOrigem[2][x][ ID_LOCAL ] , aLocalOrigem[2][x][ DESCRICAO_LOCAL ] )
39
40 NEXT
41
42
43 // Associar um evento ao botão de incluir
44 oBtnGrava := oWndForm:q_btnGrava()
45 oBtnGrava:Connect( " clicked() " , { || grava( cChave ) } )
A função grava (linha 45) pega os dados (que são variáveis estáticas) e separa para a gravação.
AQUI ESTÀ A DÚVIDA !!
Como pegar valores de objetos datas e combobox (e quem sabe de outros controles) e atribuir a variáveis do harbour ?
Eis algumas tentativas infrutíferas :
66 AADD( aParameters , oData_mov:toString( "yyyy-MM-dd" ) )
67 // Local de origem
68 AADD( aParameters , STR(oIdLocalOrigem:currentIndex()) )
Na linha 66 atribuo o valor da data para um array. Mas o valor não é retornado corretamente
Na linha 68 tento pegar o combobox selecionado mas não da certo tb.
Alguém tem algum exemplo para compartilhar ?
PS : Para quem quer iniciar no mundo do HBQT sugiro os sites :
http://www.vouch.info/harbour-qt/index.html (tem uma documentação fraquinha da HBQT mas ajuda bastante)
e a documentação gerada por Giovanni DI Maria no link abaixo :
http://www.elektrosoft.it/tutorials/hbqt/hbqt.asp
Agradeço a todos !
Aqui mesmo no fórum aprendi como atribuir uma data a um objeto QDate.
Na tentativa e erro consegui "popular" um combobox com seus valores chave definidos por mim.
Seguem os exemplos para quem quiser :
24 // Data de hoje como padrão
25 oData_Mov := oWndForm:q_data_mov()
26 oData_Mov:setDate( QDate( YEAR(DATE()) , MONTH( DATE() ) , DAY( DATE() ) ) )
27
28 Agora preencho um combobox a partir de um array multidimensional chamado aLocalOrigem
36 FOR x := 1 TO LEN( aLocalOrigem[2] ) // Percorro o array que está em aLocalOrigem[2]
37 // Preencho o combo onde ID_LOCAL = 1 e DESCRICAO_LOCAL = 2
38 oIdLocalOrigem:addItem( aLocalOrigem[2][x][ ID_LOCAL ] , aLocalOrigem[2][x][ DESCRICAO_LOCAL ] )
39
40 NEXT
41
42
43 // Associar um evento ao botão de incluir
44 oBtnGrava := oWndForm:q_btnGrava()
45 oBtnGrava:Connect( " clicked() " , { || grava( cChave ) } )
A função grava (linha 45) pega os dados (que são variáveis estáticas) e separa para a gravação.
AQUI ESTÀ A DÚVIDA !!
Como pegar valores de objetos datas e combobox (e quem sabe de outros controles) e atribuir a variáveis do harbour ?
Eis algumas tentativas infrutíferas :
66 AADD( aParameters , oData_mov:toString( "yyyy-MM-dd" ) )
67 // Local de origem
68 AADD( aParameters , STR(oIdLocalOrigem:currentIndex()) )
Na linha 66 atribuo o valor da data para um array. Mas o valor não é retornado corretamente
Na linha 68 tento pegar o combobox selecionado mas não da certo tb.
Alguém tem algum exemplo para compartilhar ?
PS : Para quem quer iniciar no mundo do HBQT sugiro os sites :
http://www.vouch.info/harbour-qt/index.html (tem uma documentação fraquinha da HBQT mas ajuda bastante)
e a documentação gerada por Giovanni DI Maria no link abaixo :
http://www.elektrosoft.it/tutorials/hbqt/hbqt.asp
Agradeço a todos !