Jump to content
Fivewin Brasil

Contribuição - Telas iguais SEMPRE!!!


william

Recommended Posts

Amigos do Forum bom dia, estou postando em dicas um trabalho que eu fiz em cima da funcao Autoresiz() do Fivewidi, que faz com que as telas desenhadas no Workshop sejam exibidas exatamente IGUAIS , independente da resolucao da tela.

A funcao recalcula o tamanho dos controles de acordo com a resolucao utilizada. A funcao antiga que originou tinha muitos defeitos, nao redimensionava as fontes dos controles e nao trabalhava com todos os controles fivewin (Xbrowse, Timage, etc...).

Eu modifiquei a funcao e agora trabalha com muitos tipos de controles, conforme o exemplo que acompanha. E tambem nessa mudanca eu fiz com que as fontes se ajustem automaticamente dentro do controle desenhado no WS. O resultado disso é fantastico, vc nao precisa se preocupar com o tamanho da fonte, a funcao calcula para vc.

Estou postando a funcao (DISPLAY.PRG) e um exemplo com os controles que a funcao trabalha. Sei que ainda nao esta completa , ainda falta + controles para corrigir, mas os principais estao trabalhando OK.

Para testar a funcao, coloque a resolucao em 800X600. Execute o exemplo TestFld2.exe e veja a tela que aparece.

Saia do programa e mude a resolucao para 1024X768 ou outra maior. Entre no programa e veja que aparece exatamente IGUAL !

Essa é a funcao, nao precisa mais se preocupar com a resolucao que o seu programa vai aparecer sempre IGUAL.

Se alguem modificar a funcao, somente peco para que poste aqui no Forum para todos.

Espero que apreciem.

William Adami

Xharbour 1.0 - Fwh - Sqlrdd , Mysql 5.0, PHP, WS , Timprime 4.0

Link to comment
Share on other sites

  • Replies 73
  • Created
  • Last Reply

Top Posters In This Topic

Amigos do Forum bom dia, estou postando em dicas um trabalho que eu fiz em cima da funcao Autoresiz() do Fivewidi, que faz com que as telas desenhadas no Workshop sejam exibidas exatamente IGUAIS , independente da resolucao da tela.

A funcao recalcula o tamanho dos controles de acordo com a resolucao utilizada. A funcao antiga que originou tinha muitos defeitos, nao redimensionava as fontes dos controles e nao trabalhava com todos os controles fivewin (Xbrowse, Timage, etc...).

Eu modifiquei a funcao e agora trabalha com muitos tipos de controles, conforme o exemplo que acompanha. E tambem nessa mudanca eu fiz com que as fontes se ajustem automaticamente dentro do controle desenhado no WS. O resultado disso é fantastico, vc nao precisa se preocupar com o tamanho da fonte, a funcao calcula para vc.

Estou postando a funcao (DISPLAY.PRG) e um exemplo com os controles que a funcao trabalha. Sei que ainda nao esta completa , ainda falta + controles para corrigir, mas os principais estao trabalhando OK.

Para testar a funcao, coloque a resolucao em 800X600. Execute o exemplo TestFld2.exe e veja a tela que aparece.

Saia do programa e mude a resolucao para 1024X768 ou outra maior. Entre no programa e veja que aparece exatamente IGUAL !

Essa é a funcao, nao precisa mais se preocupar com a resolucao que o seu programa vai aparecer sempre IGUAL.

Se alguem modificar a funcao, somente peco para que poste aqui no Forum para todos.

Espero que apreciem.

William Adami

Xharbour 1.0 - Fwh - Sqlrdd , Mysql 5.0, PHP, WS , Timprime 4.0

Link to comment
Share on other sites

Olá William, excelente trabalho... parabens...

Cheguei a resolução em 1440 x 900 e ficou show()

Uma pergunta eu desenharia as telas em qual resolução?

Alessandroid=blue>

FW20d+CL53b+Blk7+@Say+CDX

FW9.06+xHb121+PellesC+CDX

"O fracasso jamais me surpreenderá, se minha vontade de vencer for suficientemente forte..."id=red>

Link to comment
Share on other sites

Amigos, muito obrigado pelo incentivo, espero que com as observacoes de vcs possamos melhorar + essa funcao.

Alessandro, eu desenhei inicialmente em 800 X 600 , que é a resolucao minima, daí a funcao somente recalcula os controles para maior, nunca para menor.

A funcao permite vc desenhar em qualquer resolucao, basta ajustar o parametro na chamada. Mas eu ainda nao testei desenhando em resolucao maior , pois assim a funcao teria que diminuir o tamanho dos controles se for colocar em uma maquina com resolucao de 800X600.

Neste caso eu ainda nao testei,mas se nao estiver funcionando tem como resolver. Teste e me diga, ok ?

William

Xharbour 1.0 - Fwh - Sqlrdd , Mysql 5.0, PHP, WS , Timprime 4.0

Link to comment
Share on other sites

Ok!!! irei fazer os testes..... e mais uma vez parabens....

Alessandroid=blue>

FW20d+CL53b+Blk7+@Say+CDX

FW9.06+xHb121+PellesC+CDX

"O fracasso jamais me surpreenderá, se minha vontade de vencer for suficientemente forte..."id=red>

Link to comment
Share on other sites

William, você verificou que os botões, radio e checkbox, não estão ficando ´normal´?

Gostei da Idéia.

Abraços.

João Santos - São Paulo.

kmt_karinha@pop.com.br

kapiaba@brfree.com.br

Fone: (11) 3106-2832

FWH 2.7 - xHARBOUR 0.99.61 - WorkShop.Exe

Link to comment
Share on other sites

grande Kapi, como assim nao estao normal? No meu exemplo aqui parece tudo normal quanto ao redimensionamento. Onde esta o erro my friend ? Já medi até com a regua...

Lembre-se que tem que atribuir uma fonte a todos os controles...

William

Xharbour 1.0 - Fwh - Sqlrdd , Mysql 5.0, PHP, WS , Timprime 4.0

Editado por - william on 20/08/2009 14:52:08

Link to comment
Share on other sites

citação:

grande Kapi, como assim nao estao normal? No meu exemplo aqui parece tudo normal quanto ao redimensionamento. Onde esta o erro my friend ? Já medi até com a regua...

Lembre-se que tem que atribuir uma fonte a todos os controles...

William

Xharbour 1.0 - Fwh - Sqlrdd , Mysql 5.0, PHP, WS , Timprime 4.0

Editado por - william on 20/08/2009 14:52:08


id=quote>id=quote>

William, mudei a resolução de video, e chamei TESTFLD2.EXE

Não retornou a mesma imagem nos botoes e check e radio.

João Santos - São Paulo.

kmt_karinha@pop.com.br

kapiaba@brfree.com.br

Fone: (11) 3106-2832

FWH 2.7 - xHARBOUR 0.99.61 - WorkShop.Exe

Link to comment
Share on other sites

ok, entao vamos la

1) qual a resolucao que vc esta usando ? O exemplo que eu postei foi desenhado em 800X600 , entao coloque nesta resolucao e observe a imagem.

2) mude a resolucao para maior e verá que todos os controles redimensionam OK.

é em cima da resolucao de 800X600 que o exemplo roda. Do jeitinho que desenhei aqui vai aparecer igual em resolucao maior.

Teste novamente e me diga, please.

William

Xharbour 1.0 - Fwh - Sqlrdd , Mysql 5.0, PHP, WS , Timprime 4.0

Link to comment
Share on other sites

citação:

ok, entao vamos la

1) qual a resolucao que vc esta usando ? O exemplo que eu postei foi desenhado em 800X600 , entao coloque nesta resolucao e observe a imagem.

2) mude a resolucao para maior e verá que todos os controles redimensionam OK.

é em cima da resolucao de 800X600 que o exemplo roda. Do jeitinho que desenhei aqui vai aparecer igual em resolucao maior.

Teste novamente e me diga, please.

William

Xharbour 1.0 - Fwh - Sqlrdd , Mysql 5.0, PHP, WS , Timprime 4.0


id=quote>id=quote>

FOI O QUE FIZ, 800X600 e depois para 1024 x... sei lá.

Não ficaram identicos, apenas o texto do botao radio e check.

Abraços.

João Santos - São Paulo.

kmt_karinha@pop.com.br

kapiaba@brfree.com.br

Fone: (11) 3106-2832

FWH 2.7 - xHARBOUR 0.99.61 - WorkShop.Exe

Link to comment
Share on other sites

vc recompilou o exemplo ou utilizou o executavel que foi junto?

NAo sei te dizer o que pode ser, em todas as maquinas que testei deu certo, pelo que os outros que testaram disseram

funciona correto... NAo sei que urucubaca acontece contigo...

William

Xharbour 1.0 - Fwh - Sqlrdd , Mysql 5.0, PHP, WS , Timprime 4.0

Link to comment
Share on other sites

USEI O EXECUTAVEL QUE VEIO NO .ZIP.

NÃO FICARAM IGUAIS, PELO MENOS O BOTAO. RADIO E CHECKBOX.

EM TEMPO: O TEXTO DO BOTAO POR EXEMPLO, DIMINUIU.

João Santos - São Paulo.

kmt_karinha@pop.com.br

kapiaba@brfree.com.br

Fone: (11) 3106-2832

FWH 2.7 - xHARBOUR 0.99.61 - WorkShop.Exe

Editado por - kapiaba on 20/08/2009 16:11:55

Link to comment
Share on other sites

Kapiaba vc poderia dar uma olhada na funcao e ver se descobre o pq disso ? Como aqui esta funcionando corretamente fica dificil eu descobrir o erro.

Me lembro que vc relatou um erro no seu computador com relacao a trocar fontes ou sumir fontes , nao seria isso ?

Como diminuiu a fonte como vc relatou, talvez possa ser isso. Verifique se as fontes utilizadas existem no seu wINDOWS. Ou entao troque a fonte e veja se continua o erro.

William

Xharbour 1.0 - Fwh - Sqlrdd , Mysql 5.0, PHP, WS , Timprime 4.0

Editado por - william on 20/08/2009 16:20:11

Link to comment
Share on other sites

Kapi quando usa a funcao de redimensionamento, se vc usar o CENTERED nao vai funcionar, ele vai colocar o dialog na posicao 0,0.

Para resolver isso, simplesmente troque para a seguinte forma:

ACTIVATE DIALOG oDlg on init (autresiz( .T., 0, odlg, 2 ),odlg:center())

Chame odlg:center() apos a chamada do redimensionamento que resolve.

William

Xharbour 1.0 - Fwh - Sqlrdd , Mysql 5.0, PHP, WS , Timprime 4.0

Link to comment
Share on other sites

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...