GARANTIR DESCONTO

Fórum Redimensionar e Movimentar Componentes em Run - Time !! #341855

16/05/2007

0

Colegas..

Procurei muito por uma solução, e inclusive há tempos atrás já postei uma pergunta deste tipo.. mas agora com um pouco mais de experiência, acredito que possa explicar melhor o quê preciso, já faz 3 a 4 anos que estou tentando fazer isso..

Preciso redimensionar e movimentar componentes em Run - Time, com intervenção do usuário, mas estes componentes não são do tipo TControl, portanto não possuem o evento OnKeyDown, ou OnMouseDown, etc..

Sei que existe uma maneira de fazer isso, pois trabalhamos com este tipo de tecnologia na criação de relatórios..

O que estou tenatndo fazer é possibilitar ao usuário, a alteração(personalização), de um relatório criado em fortes report, em Run - Time...

Isso já existe, mas não visualmente, eu tenho uma tabela com os Tops, Heigths, Lefts e Widths de todos os componentes dos relatórios, mas preciso que isso funcione visualmente..

Alguém sabe como fazer isso ???


Cabelo

Cabelo

Responder

Posts

17/05/2007

Thiago Vidal

cara, nao imagino que tipo de componentes sejam esses sem os eventos de OnMouseDown, etc...

De qualquer forma, penso em 2 alternativas:
A primeira é utilizar o evento OnMouseDown do Form, e de acordo com as coordenadas indicadas, descobrir qual controle foi clicado, e consequentemente, simular um clique no controle.

A segunda, seria utilizar as mensagens do windows mesmo, WM_MOUSEDOWN e coisas do tipo... deve funcionar!

Nunca usei QuickReport, mas acredito que uma dessas alternativas deve funcionar!

Se nao, vc pode simplesmente criar um form com TLabels, e salvar as coordenadas dessas labels, para depois carregá-las no QuickReport!

Boa sorte!


Responder

Gostei + 0

21/05/2007

Cabelo

Colega..

tentei das duas formas que você me indicou.. mas não obtive êxito..

Na segunda, nem compila..

Estou utilizando .CLX... e não posso utilizar as API´s do Windows, portanto.. não posso usar as mensagens do SO..

Outra coisa.. na primeira idéia.. funciona até que beleza.. mas o problema é que quando eu utilizo o OnMouseDown ou Move do form, quando tenho um controle por cima, não consigo pegar o evento...

vc sabe o pq???


Responder

Gostei + 0

22/05/2007

Nigro

´Se nao, vc pode simplesmente criar um form com TLabels, e salvar as coordenadas dessas labels, para depois carregá-las no QuickReport!´
Eu usei essa saída e deu certo...


Responder

Gostei + 0

22/05/2007

Cabelo

Colega..

Na resposta à mensagem, falei que compilava em .clx..

Você compila em .CLX..??

Se sim.. por favor.. como fez seu código para movimentar...?

Pois só encontrei material para .VCL...

Você poderia me dar um exemplo???

Agradeço sua ajuda..


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar