Как сделать многост...
 
Уведомления
Очистить все

Как сделать многострочную надпись на TBitBtn?

1 Записи
1 Пользователи
0 Likes
335 Просмотры
10-150 Okolokompa Форум
 dom
(@dom)
Honorable Member
Присоединился: 5 лет назад
Записи: 200
Создатель темы  

Выводите текст надписи непосредственно на "glyph" TBitBtn'а. См. пример.


procedure TForm1.FormCreate(Sender: TObject);
var
R : TRect;
N : Integer;
Buff : array[0..255] of Char;
begin
with BitBtn1 do
begin
Caption := 'A really really long caption';
Glyph.Canvas.Font := Self.Font;
Glyph.Width := Width - 6;
Glyph.Height := Height - 6;
R := Bounds(0, 0, Glyph.Width, 0);
StrPCopy(Buff, Caption);
Caption := '';
DrawText(Glyph.Canvas.Handle,Buff,StrLen(Buff),R,
DT_CENTER or DT_WORDBREAK or DT_CALCRECT);
OffsetRect(R,(Glyph.Width - R.Right) div 2,
(Glyph.Height - R.Bottom) div 2);
DrawText(Glyph.Canvas.Handle,Buff,StrLen(Buff),R,
DT_CENTER or DT_WORDBREAK);
end;
end;

   
Цитата
Поделиться: