Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.17;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.019 c
1-52867
AlexanderSK
2003-02-07 18:07
2003.02.17
const в определении функции


1-52826
b-Ars
2003-02-06 12:32
2003.02.17
Как программно создать ярлык в меню


1-53061
jiura
2003-02-06 17:11
2003.02.17
Скрытие MDiChild


14-53243
pochtamt
2003-02-01 12:58
2003.02.17
Как открыть проект в , если сделан он в D6?


1-53038
Stan
2003-02-11 01:00
2003.02.17
Работа с реестром