Вниз
Скачать: CL | DM;

Помогите с TImage   Найти похожие ветки 

← →
super_alex   (2003-02-07 12:05) [0]

Столкнулся с такой проблемой: если панели или имаджу задать какой-нить align (или просто без align), то потом (в коде) его размеры не хотят меняться. Вернее фактически размеры изменяются, то есть делаются такими как я задаю, но отображаются те которые были до компиляции???
Допустим собираю форму, кидаю на неё имадж (100х100), в коде (допустим при нажатии на кнопку) изменяю размер допустим 200х200 и рисую просто линию на нем. При отображении имадж остался прежним (100х100), а линия нарисовалась, но только та её часть которая вошла в квадрат 100х100???
Помогите кто знает - очень надо...


← →
super_alex   (2003-02-07 12:18) [1]

Что никто тоже не знает?


← →
icWasya ©   (2003-02-07 12:22) [2]

скорее всего происходит следующее:

при первом обращении к Image.Canvas делается проверка наличия у Image объекта Picture. Если Picture = Nil то создаётся TBitmap c размерами равными размеру Image. И затем всё рисуется на этом Bitmap. Если после этого Image изменяет размер, то у этого Bitmap размер не меняется.

для устранения эффекта сделай так
1)
procedure TForm1.FormCreate (Sender:TObject);
begin
...
// гарантировано создадим Picture.Bitmap;
Image1.Canvas.Pixels[0,0]:=clWhite;
...
end;

2)
procedure TForm1.OnResize(Sender:TObject);
begin
Image1.Picture.Bitmap.Width:=Image1.Width;
Image1.Picture.Bitmap.Height:=Image1.Height;
end;



← →
Smithson ©   (2003-02-07 12:26) [3]

Именно так. А обошел этот секс просто рисование на Canvas формы.


← →
super_alex   (2003-02-07 12:31) [4]

Всем спасибо - разобрался!!!



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.013 c
8-53126
Kaban
2002-11-05 11:13
2003.02.17
Показания кардиографа


3-52759
fool
2003-01-30 18:21
2003.02.17
Как с помощью T-SQL создать значение


1-53102
antoniz
2003-02-07 09:57
2003.02.17
Как скрыть заголовок окна


4-53323
PaRL.
2003-01-06 22:01
2003.02.17
Спящий режим


7-53312
SZap
2002-12-13 14:29
2003.02.17
Серийный номер HDD




   Наверх