|
#1
|
|||
|
|||
я в растерянности
можно каким-нибудь образом стереть нарисованные линии на форме, кроме как закрасить в цвет формы?
p.s.:у меня на ворме размещена картинка(катра области) и мне необходимо прорисовать несколько дорог |
#2
|
|||
|
|||
Можно-можно!! =)
У объекта Pen (т.е. у карандаша, которым вы рисуете линию) есть свойство Mode, ответственное за режим рисования. Так вот, если этому свойству Mode присвоить значение pmNotXor, то карандаш при первом рисовании линии будет рисовать ее как обычно, а если нарисовать таким карандашом эту же самую линию второй раз, то прежнее изображение восстанавливается. В общем, смотрите справку по свойству Mode объекта TPen. |
#3
|
|||
|
|||
к сожалению оно мне не помогает
|
#4
|
|||
|
|||
В смысле?? Значит, вы что-то делаете не так.
|
#5
|
|||
|
|||
возможно...
я еще пробывала использовать image1.transparent:=true, но тоже не очень работает... я просто безнадежна |
#6
|
|||
|
|||
Не делайте поспешных выводов.
Давайте с простого. Пусть на форме у вас битмап. Киньте на форму кнопку и назначьте ей вот такой обработчик события OnClick: Код:
procedure TForm1.Button1Click(Sender: TObject); var StartPos: TPoint; oldPenMode: TPenMode; begin StartPos.X := 0; StartPos.Y := 0; with Image1.Canvas do begin oldPenMode := Pen.Mode; Pen.Mode := pmNotXor; PenPos := StartPos; LineTo(Image1.Width, Image1.Height); Pen.Mode := oldPenMode; end; end; |
#7
|
|||
|
|||
да, это получилось!!!
я наверн буду совсем наглой, если попрошу вас помочь мне именно с моей программой.. может вы дадите мне ваше isq, я скину прогу, и вы найдете неточности и подскажите, как их исправить... если это конечно возможно :-[ |
#8
|
|||
|
|||
Цитата:
Да и в ваших же интересах сделать самостоятельно. Тем более, что у вас получилось. Закономерность ведь проста:
|
#9
|
|||
|
|||
я с вами согласна, что самой написать- лучше!!!
просто весь день с ней мучаюсь... огромное спасибо, что объяснили, как это делается))) |