На главную
Подписка
Новости


Рейтинг@Mail.ru











Главная / DELPHI / Часто задаваемые вопросы и ответы на них / Компоненты / При использовании BitBtn Caption(текст) и картинка(bitmap) из файла не видны одновременно. Почему? Сделать домашней страницей Добавить в избранное Написать писмо

При использовании BitBtn Caption(текст) и картинка(bitmap) из файла не видны одновременно. Почему?


Это может происходить если картинка слишком велика. Класс TBitBtn сначала рисует картинку, а затем выводит текст над, под, слева или справа от картинки (в завивимости от свойства Layout). Если размер картинки такой же как у всей кнопки для вывода текста просто не остается места. Если Вам нужно получить кнопку такого же размера как Ваша картинка и видеть при этом надпись на кнопке Вам придется выводить текст надписи непосредственно на канву картинки.

Пример:

var
   bm : TBitmap;
   OldBkMode : integer;
begin
   bm := TBitmap.Create;
   bm.Width := BitBtn1.Glyph.Width;
   bm.Height := BitBtn1.Glyph.Height;
   bm.Canvas.Draw(0, 0, BitBtn1.Glyph);
   OldBkMode := SetBkMode(bm.Canvas.Handle, Transparent);
   bm.Canvas.TextOut(0, 0, 'The Caption');
   SetBkMode(bm.Canvas.Handle, OldBkMode);
   BitBtn1.Glyph.Assign(bm);
end;


Источник: Дельфи. Вокруг да около.


Copyright ©   "Мастера DELPHI"   E-mail:   delphi@mastak.com  http://www.delphimaster.ru
Источник получения информации: http://www.delphimaster.ru
Hosted by uCoz