Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.06;
Скачать: CL | DM;

Вниз

При изменении размера формы теряется рисунок на Image   Найти похожие ветки 

 
Ira   (2005-01-20 14:54) [0]

Кто подскажет!
На форме есть image.
При create на image рисуется сетка,
но при изменении размеров формы сетка не перерисовывается на
весь экран.
Как поступить?
Спасибо!


 
Antonn ©   (2005-01-20 14:59) [1]

При каких событиях рисуется первоначальная сетка и на чем(Image1.Picture.Bitmap.Canvas и image1.canvas немного разные вещи)? И вообще, что значит

> но при изменении размеров формы сетка не
>перерисовывается на
> весь экран.


 
Ira   (2005-01-20 15:05) [2]

Рисуется на image1.Canvas.
Нужно чтобы при изменении размеров формы image тоже изменял свои размеры под форму и как бы заново рисовалась сетка но уже на разтянутом image.


 
Ira   (2005-01-20 15:07) [3]

Вооьще рисую я так:
for i:=1 to form1.Width do begin
image1.Canvas.MoveTo(x+i*10,0);
image1.canvas.LineTo(x+i*10,Image1.Height);
end;
for j:=1 to form1.Height do begin
image1.Canvas.MoveTo(0,y+j*10);
image1.canvas.LineTo(image1.Width,y+j*10);
end;
Может подскажете более рациональный способ рисования сетки на image?


 
Ira   (2005-01-20 15:08) [4]

Вооьще рисую я так:
for i:=1 to form1.Width do begin
image1.Canvas.MoveTo(x+i*10,0);
image1.canvas.LineTo(x+i*10,Image1.Height);
end;
for j:=1 to form1.Height do begin
image1.Canvas.MoveTo(0,y+j*10);
image1.canvas.LineTo(image1.Width,y+j*10);
end;
Может подскажете более рациональный способ рисования сетки на image? А то с этим проблемки.


 
Knight ©   (2005-01-20 15:58) [5]

Используй не TImage, а TPaintBox рисуй сетку в onPaint...


 
antonn ©   (2005-01-20 15:58) [6]


> image1.Canvas.MoveTo(x+i*10,0);

думаю можно не писать 10,0 а -> 10. А х чему равен? В формресайз пропиши свои циклы. Да и j можно на i заменить.


 
LM2   (2005-01-20 17:14) [7]

у TImage есть небольшой глюк(может и не глюк)
- после увеличения размера TImage не рисуется в той области на которую был увеличен(скорее всего размеры внутренего Bitmap не меняются)!
Выход такой - в режиме дизайна сделать Image.Align := alNone и TImage максимально большим, а на создание формы привести к нужным размерам Image.Align := alClient.
Может можно и другим способом.


 
Knight ©   (2005-01-20 18:45) [8]


> [7] LM2   (20.01.05 17:14)
> Может можно и другим способом.

Способ описан в [5]... А у TImage несколько иные задачи...


 
Eraser ©   (2005-01-21 00:37) [9]

Antonn ©
image1.Canvas

Бред. Тогда лучше и быстрее рисовать прямо на форме.

Ira
Ира, всё гораздо проще, рисуй на этой канаве:
image.Picture.Bitmap.Canvas



Страницы: 1 вся ветка

Текущий архив: 2005.02.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.064 c
1-1106417243
InTr
2005-01-22 21:07
2005.02.06
Поле ввода/редактирования, подобное вордовому


4-1103274502
SiDoff
2004-12-17 12:08
2005.02.06
Как получить указатель на pop up ....


1-1106297005
ShimON
2005-01-21 11:43
2005.02.06
Какое событие обработать??


14-1106040354
mac
2005-01-18 12:25
2005.02.06
векторная графика


1-1106243907
Dmitry_04
2005-01-20 20:58
2005.02.06
Как отловить событие на то, что компъютер выйдет из интернета?