Форум: "Media";
Текущий архив: 2003.10.16;
Скачать: [xml.tar.bz2];
ВнизКак перетащить в tbitmap конкретный рисунок из Timagelist? Найти похожие ветки
← →
sergey2 (2003-06-15 14:14) [0]Сабж. Может я тупой, но пол-дня не мог сделать такую фигню.
Вобщем есть переменная типа tbitmap, и нужно в нее из timagelist перетащить заданный рисунок.
Помогите плиз...
← →
Song (2003-06-15 14:20) [1]TImageList.GetBitMap()
← →
sergey2 (2003-06-16 12:50) [2]Да пробовал я это.. Ни фига не работает.
Когда пишу так:
procedure TForm1.CaptionButton3Click(Sender: TObject);
var
pict:TBitmap;
begin
imagelist1.GetBitmap(1,pict);
captionbutton3.Glyph:=pict;
end;
компилятор выдает
[Warning] Main.pas(160): Variable "pict" might not have been initialized
И в рантайме в этом месте ошибка возникает.
А когда для эксперимента пробую так:
procedure TForm1.CaptionButton3Click(Sender: TObject);
var
pict:TBitmap;
begin
pict:=nil;
imagelist1.GetBitmap(1,pict);
captionbutton3.Glyph:=pict;
end;
То в строке imagelist1.GetBitmap(1,pict) значение pict не меняется.
Так что эта процедура GetBitmap() наверное предназначена не для того что мне нужно, а для обратного.
Мож кто еще подскажет?
← →
pasha676 (2003-06-16 13:33) [3]pict:=nil; - супер.
А хелп почитать слабо? Там даже пример есть. Его надо не обнулять, а создавать.
← →
sergey2 (2003-06-16 14:17) [4]Да мне его обнулять и не нужно. Просто это я провел эксперимент.
чтобы компилятор мне не писал что Variable "pict" might not have been initialized. Я просто и не знал что ее нужно создавать.
(раньше не приходилось использовать tbitmap)
Вобщем большое спасибо. Я понял.
Такая фигня уже работает:
procedure TForm1.CaptionButton3Click(Sender: TObject);
var
pict:TBitmap;
begin
pict:=tbitmap.create;
imagelist1.GetBitmap(1,pict);
captionbutton3.Glyph:=pict;
end;
хотя как оказалось можно было и без переменной pict написать:
procedure TForm1.CaptionButton3Click(Sender: TObject);
begin
imagelist1.GetBitmap(1,captionbutton3.Glyph);
end;
← →
Song (2003-06-16 15:02) [5]Нормально.. ты не в созданный bitmap получаешь картинку. Однака, ты гений.
← →
sergey2 (2003-06-16 15:12) [6]Ты имеешь ввиду что мне рисунок нужен был в captionbutton3.Glyph?
просто когда у меня что-то не получается, я начинаю писать код так чтобы все понемногу делалось, чтобы можно было проследить что не нравится компилятору или где ошибка возникает.
Поэтому и вставил эту переменную pict.
← →
pasha676 (2003-06-16 15:42) [7]Да нет же. Он имеет ввиду основы объектного програмирования. Прежде чем использовать объект, его надо создать. Может и есть языки которые обходяться без этого правила - но я таких не встречал.
Если хочешь использовать TBitmap - создай его. Закончил работу - удали. TBitmap - это не переменная картинки - это полноценный объект со всякими методами и пропертями... И еще рекомендую научиться юзать клавишу F1. Если б ты ей воспользовался ранее - то этого вопроса не было бы на форуме.
Страницы: 1 вся ветка
Форум: "Media";
Текущий архив: 2003.10.16;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.01 c