![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вопрос по TImage... [D5, WinXP]
Rusty © (2004-10-20 22:01:00)Уважаемые, помогите!
Решил поработать с графикой, но тут же столкнулся со следующей проблемой:
на форме компонент TImage; изменение размера формы обрабатываю так:
procedure TForm1.FormResize(Sender: TObject);
begin
Image1.Left:=0;
Image1.Top:=0;
Image1.Width:=ClientWidth;
Image1.Height:=ClientHeight;
Image.Canvas.FillRect(Rect 0,0,ClientWidth,ClientHeight));
end;
После запуска приложения пытаюсь увеличить размеры формы, но размеры компонента TImage не увеличиваются, т.е. на форме остается квадрат белого цвета прежнего размера. При уменьшении размера формы - как бы все нормально. С чем это связано? Как решить эту проблему?
WondeRu (2004-10-21 15:14:00) [1]Ozone © (21.10.04 15:02) [7]
это не баг, это фича!
уже с Делфи 5 известна эта особенность. Думаю есть веские причины у Борланда, чтобы эту "фичу" оставить
Ozone (2004-10-21 15:02:00) [2]WondeRu © (21.10.04 14:58) [6]
Да я не про то. Мне кажется если ты заговорил про Align, то нужно еще и упомянуть и о баге в сорцах, ИМХО.
WondeRu (2004-10-21 14:58:00) [3]Mihey_temporary © (20.10.04 22:44) [1]
ответ правильный. Зачем еще добавлять чего-то, а вот те 4 строчки не понравились ;-)
Ozone (2004-10-21 14:49:00) [4]WondeRu © (21.10.04 14:47) [4]
Ну дык, почему тогда отвечаешь на вопрос не полностью :)
WondeRu (2004-10-21 14:47:00) [5]Ozone © (21.10.04 14:41) [3]
это обычный глюк TImage
на vcl.ru в faq было
"Вопрос: При увеличении размера компонента TImage в RunTime пытаюсь рисоватьзаново на всем поле, но отображается только часть компонента (прежнегоразмера). В чем дело?
Ответ: Нужно при инициализации выполнить SetBounds(), с максимальными размерами."
Ozone (2004-10-21 14:41:00) [6]WondeRu © (21.10.04 14:30) [2]
А ты пробовал? У тебя при таком subj'евого эффекта не наблюдалось?
WondeRu (2004-10-21 14:30:00) [7]Rusty (20.10.04 22:01)
Image1.Left:=0;
Image1.Top:=0;
Image1.Width:=ClientWidth;
Image1.Height:=ClientHeight;
а Align влом выставить в alClient?
Mihey_temporary (2004-10-20 22:44:00) [8]Добавь:
Image1.Picture.Bitmap.Width:=ClientWidth;
Image1.Picture.Bitmap.Height:=ClientHeight;
Недоработочка компонента, видимо.