Página 1 de 1
wvt_drawboxget(17,38,1)
Enviado: 29 Mai 2010 22:13
por Laudelino Scarmagnani
Boa noite!
Encontrei uma função: wvt_drawboxget(17,38,1). Pelo que vi, cria uma caixinha para get´s. Tenho como usa-la num comando assim: @ LIN+1,07 GET WQTD[WIND] PICT '@E 9999999.99'?
Uso o xharbour com gtwvt.
Laudelino.
Re: wvt_drawboxget(17,38,1)
Enviado: 31 Mai 2010 12:43
por anacatacombs
Redefinindo o comando get..
Mas talvez algum colega com mais experiência tenha uma alternativa melhor...
[]'s
Ana
Re: wvt_drawboxget(17,38,1)
Enviado: 31 Mai 2010 13:08
por alaminojunior
A forma mais básica sería:
Código: Selecionar todos
wvt_drawboxget(nLinha, nColuna, nTam) // nTam é o tamanho da variável em caracteres.
Basta chamar a função para cada get, antes do READ que ela desenha uma caixinha nas coordenadas informadas.
Ou criar outros artifícios para automatizar no caso de números variáveis de get´s.
Talvez (porque não testei) chamando a função com a cláusula WHEN pode facilitar um pouco.
Código: Selecionar todos
var:= space(30)
@ 10,10 get var pict "@!" when caixinha(row(),col(),len(var))
...
read
...
Function caixinha(lin,col,tam)
wvt_drawboxget(lin,col,tam)
return .t.
Re: wvt_drawboxget(17,38,1)
Enviado: 31 Mai 2010 17:51
por anacatacombs
mas aí o colega teria que passar o sistema inteiro colocando o caixinha no when..
Re: wvt_drawboxget(17,38,1)
Enviado: 31 Mai 2010 21:07
por jairfab
#xcommand @ <x>,<y> GET <oGget> => wvt_drawboxget(<x>,<y>, len(<oGget>)) vendo o que ja foi postado eu pergunto se isto nao resolveria, assim alterava todo o sistema de uma so vez... è so uma ideia nunca testei isto mesmo por que nao uso a gtwvt
Re: wvt_drawboxget(17,38,1)
Enviado: 01 Jun 2010 00:22
por angeiras
Boa noite,
Eu uso assim :
Criei um define para fazer a caixa de todos os gets ativos :
Código: Selecionar todos
#define READ_GETS( c, w ) AddObjetos( w, {|nWindow| x := nWindow, aEval( GetList, {|oGet| WVW_DrawBoxGet( x, oGet:Row, oGet:Col, Len( Transform( oGet:VarGet(), oGet:Picture ) ) ) } ) } ) ;;
setcursor(1); read; setcursor(c)
onde
c = o modo do cursor
w = a janela em que desejamos fazer a caixa nos gets.
Desse modo teria que substituir os read pelo READ_GETS.
Uso com a gtwvw, não sei se vai funcionar na wvt.
[]s
M.Angeiras
Re: wvt_drawboxget(17,38,1)
Enviado: 01 Jun 2010 09:04
por asimoes
Olá Angeiras
Eu vi que no define você usa a função AddObjetos, qual é código desta função?
[]´s
Re: wvt_drawboxget(17,38,1)
Enviado: 01 Jun 2010 09:18
por anacatacombs
jairfab escreveu:#xcommand @ <x>,<y> GET <oGget> => wvt_drawboxget(<x>,<y>, len(<oGget>))
Era exatamente a isso que eu me referia, pois de qualquer forma, o colega teria que passar todo o sistema trocando os reads pelo read_get ...
aSimões... imagino que seja essa função...
Mas não sei se teria utilidade para a gtwvt (nunca trabalhei com ela..) , mas na gtwvw, ela faz parte do conjunto de funções responsáveis pelo suporte ao redesenho em algumas funções da gtwvw, que "apagam" o conteúdo gráfico quando alterna a janela.
Se eu estiver errada, por favor, me corrijam...
Código: Selecionar todos
*********************************************
function AddObjetos( nWinNum, bAction )
*********************************************
aadd( p_aListObjects[ nWinNum+1 ], bAction )
return .t.
[]'s
Ana
Re: wvt_drawboxget(17,38,1)
Enviado: 01 Jun 2010 10:41
por asimoes
Aproveitando o tópico,
Existe duas funções muito interessantes da gtwvg WVG_BoxRecessed e WVG_BoxRaised só tem um problema, quando elas são usadas as mesmas ocupam a posição definidas pelas coordenas de linha e coluna. Pergunta: como apagar as posições de tela ocupadas? Essas funções são o oposto da Wvw_DrawBoxRecessed e Wvw_DrawBoxRaised da gtwvw que apagam quando a tela é alternada ou minimizada/maximizada.
[]´s
Re: wvt_drawboxget(17,38,1)
Enviado: 05 Jun 2010 08:33
por anacatacombs
Meu caro , infelizmente não utilizo a wvg ... no entanto, se vc pudesse disponibilizar uma pequena parte do erro, posso tentar te ajudar...
[]'s
Ana
Re: wvt_drawboxget(17,38,1)
Enviado: 07 Jun 2010 22:47
por Mário Isa
Galera / não é por mal / mas acho q este tópico deveria estar lá nos das Bibliotecas Gráficas não ?
Mário