Fórum Linhas sobre um TImage #255631
22/10/2004
0
[b:d5dff91fdb] Questã de vida ou de morte morrida...
Olá pessoal,
Estou precisando de uma pequena ajuda de vocês. A questão é a seguinte, tenho um componente TImage que abre uma figura de uma planta baixa de casa ou sala comercial - (bmp ou jpg). Eu preciso fazer um esquema que me parece não ser muito complicado para quem trabalha ai com figuras.
Preciso fazer um esquema de linhas-guias que sigam o cursor do mouse enquanto o estou arrastando (estas linhas devem ser pontilhadas) tipo Corel Draw com as linhas-guias para alinhar objetos.
Consigo fazer a linha, consigo definir a cor da linha - aliás, já tenho a linha que acompanha o mouse. O negócio é que quando desloco o mouse para esquerda ou direira a encrenca da linha não é apagada da imagem.
Aqui vai um pedaço do código que eu já fiz.
procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
var
vOri: TPoint;
begin
StatusBar1.Panels[1].Text := Format(´Pos X: ¬d Pos Y: ¬d´,[X, Y ]);
vOri := Point(X,Y);
with Image1.Canvas do
begin
Pen.Style := psDot;
Pen.Color := clBlue;
Pen.Mode := pmNotXor;
MoveTo(vOri.X,0);
LineTo(vOri.X,Image1.Height);
if (X vOri.X) then
begin
MoveTo(X,0);
LineTo(X,Image1.Height);
Pen.Mode := pmCopy;
end;
end;
end;
Quem puder me ajudar - agradeço desde já.
Eixo X
[/b:d5dff91fdb]
Olá pessoal,
Estou precisando de uma pequena ajuda de vocês. A questão é a seguinte, tenho um componente TImage que abre uma figura de uma planta baixa de casa ou sala comercial - (bmp ou jpg). Eu preciso fazer um esquema que me parece não ser muito complicado para quem trabalha ai com figuras.
Preciso fazer um esquema de linhas-guias que sigam o cursor do mouse enquanto o estou arrastando (estas linhas devem ser pontilhadas) tipo Corel Draw com as linhas-guias para alinhar objetos.
Consigo fazer a linha, consigo definir a cor da linha - aliás, já tenho a linha que acompanha o mouse. O negócio é que quando desloco o mouse para esquerda ou direira a encrenca da linha não é apagada da imagem.
Aqui vai um pedaço do código que eu já fiz.
procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
var
vOri: TPoint;
begin
StatusBar1.Panels[1].Text := Format(´Pos X: ¬d Pos Y: ¬d´,[X, Y ]);
vOri := Point(X,Y);
with Image1.Canvas do
begin
Pen.Style := psDot;
Pen.Color := clBlue;
Pen.Mode := pmNotXor;
MoveTo(vOri.X,0);
LineTo(vOri.X,Image1.Height);
if (X vOri.X) then
begin
MoveTo(X,0);
LineTo(X,Image1.Height);
Pen.Mode := pmCopy;
end;
end;
end;
Quem puder me ajudar - agradeço desde já.
Eixo X
[/b:d5dff91fdb]
Eixox
Curtir tópico
+ 0
Responder
Posts
22/10/2004
Marcelo Saviski
Tente ver se esse tópico ajuda:
http://delphiforum.icft.com.br/forum/viewtopic.php?t=53409
http://delphiforum.icft.com.br/forum/viewtopic.php?t=53409
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)