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

Как изменить размеры компонента Image при масштабировании?   Найти похожие ветки 

 
Dr. Andrew ©   (2003-06-09 12:28) [0]

Если, например, установить размеры Image - 350х350 пикселов и поместить его в компонент ScrollBox, то при масштабировании (как показано в примере ниже) без вспомогательного DestBitmap реально не происходит увеличения Image1. Визуально все прорисовывается в пределах прежних размеров - 350х350 пикселов.
Как практически решить эту проблему?

Пример процедуры:

{ SrcBitmap - маленький Bitmap, который необходимо вывести на компонент Image }
procedure TForm1.ElComboBox1Change(Sender: TObject);
var DestBitmap: Tbitmap;
begin
DestBitmap:= TBitmap.Create;
DestBitmap.PixelFormat:= pf32bit; { только первой строкой, иначе все "виснет"! }
DestBitmap.Width := 256*32;
DestBitmap.Height:= 256*32;
DestBitmap.Canvas.StretchDraw(Rect(0, 0, DestBitmap.Width, DestBitmap.Height), SrcBitmap);

Image1.Left:= 0;
Image1.Top:= 0;
Image1.Width := 256*32;
Image1.Height:= 256*32;
Image1.Picture.Assign(DestBitmap);
Image1.Invalidate;
DestBitmap.Free;
end;


 
Andy BitOff ©   (2003-06-09 12:34) [1]

Поиграйся с stretch и proportional у Image.
А нужные размеры выставляй как Image.Height и Width


 
ZEE ©   (2003-06-09 12:35) [2]

зачем так сложно, можно так:
Image1.AutoSize:=false;
Image1.Stretch:=true;
Image1.Width:=256*32;
Image1.Height:=256*32;

ЗЫ: конечно в Image1 уже загружена картинка


 
Dr. Andrew ©   (2003-06-09 14:02) [3]

Image1.Stretch не годится!!!
Есть еще возможности?!



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

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



Память: 0.45 MB
Время: 0.017 c
14-84655
PaulSin
2003-06-10 13:18
2003.06.26
Сабж - значение слова ?


1-84336
alexvan
2003-06-16 10:13
2003.06.26
Странный глюк при выходе из критической секции


1-84173
i_pashkov
2003-06-11 18:32
2003.06.26
Использую функцию FindWindow, чтобы определить запущена ли IDE


14-84667
Вопрошающий
2003-06-10 13:31
2003.06.26
Загадка природы


1-84078
Volly
2003-06-10 11:24
2003.06.26
Memo > 64kb




   Наверх