Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Изменить шрифт TStatusBar

Delphi , Компоненты и Классы , TStatusBar

Изменить шрифт TStatusBar

Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

{ 
  To use this example, you need a TStatusBar and at least one Panel. 
  Then change the style of StatusBar1.Panels[0] to 
  psOwnerDraw and add the code below to the OnDrawPanel handler. 

  Es wird eine TStatusBar fur dieses Beispiel benotigt mit 
  mindestens einem Panel. 
  Der Style von StatusBar1.Panels[0] muss zu psOwnerDraw 
  geandert werden. 
  Fuge dann folgenden Code im OnDrawPanel Ereignis hinzu: 
}

 procedure TForm1.StatusBar1DrawPanel(StatusBar: TStatusBar;
   Panel: TStatusPanel; const Rect: TRect);
 var
   SomeText: string;
 begin
   if Panel = StatusBar1.Panels[0] then
   begin
     SomeText    := 'Hello!';
     Panel.Width := Trunc(StatusBar1.Canvas.TextWidth(SomeText) * 1.5);
     with StatusBar.Canvas do
      begin
       Brush.Color := clWhite;
       FillRect(Rect);
       Font.Name  := 'Arial';
       Font.Color := clRed;
       Font.Style := Font.Style + [fsItalic, fsBold];
       TextRect(Rect, Rect.Left + 1, Rect.Top, SomeText);
     end;
   end;
 end;

Код, предоставленный ниже, является процедурой для рисования пользовательского панели в контроле TStatusBar в Delphi. Процедура StatusBar1DrawPanel вызывается при необходимости перерисовать панель.

Вот разбивка того, что код делает:

  • Он сначала проверяет, является ли панель, которая должна быть нарисована, первой панелей в статус-баре (StatusBar1.Panels[0]). Если это так, то код внутри if будет выполняться.
  • Он задает строковую переменную SomeText значением 'Hello!'.
  • Затем он корректирует ширину панели, чтобы она была равна 1.5 раза ширине текста в канвасе статус-бара.
  • Код затем использует методы канваса для рисования прямоугольника (FillRect) с белым цветом и затем рисует текст с помощью TextRect. Шрифт задается как Arial, красный цвет, и стили italic и bold.

Чтобы изменить шрифт TStatusBar, вы можете модифицировать строку, где он устанавливает свойства шрифта:

Font.Name    := 'ВашНовыйШрифт';  // Замените на имя вашего желаемого шрифта
Font.Color   := clВашЖелаемыйЦвет;  // Замените на цвет вашего желаемого цвета

Например, чтобы изменить шрифт на Times New Roman и синий цвет, вы бы использовали:

Font.Name    := 'Times New Roman';
Font.Color   := clBlue;

Вы также можете модифицировать другие свойства, такие как Font.Style, чтобы достичь желаемого эффекта.

В статье описывается пример изменения шрифта TStatusBar на компьютере Delphi, в котором используется стиль panels[0] с параметром psOwnerDraw и добавляется код для обработки события OnDrawPanel.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: TStatusBar ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-19 13:29:56
2024-11-13 09:23:22/0.012096881866455/0