Как изменить шрифт и выравнивание в заголовке формы?
Примечание: formDeactivate не вызовится пока форма не станет активной,иногда FormPaint не вызывается. Если форма была не активто, то при активации перерисуется.
Переопределить шрифт и выравнивание в заголовке формы Delphi можно с помощью обработчика сообщения WMNCPaint.
Вот пример кода:
typeTForm1=class(TForm)privateprocedureWMNCPaint(varMsg:TWMNCPaint);messageWM_NCPAINT;publicend;varForm1:TForm1;implementationprocedureTForm1.WMNCPaint(varMsg:TWMNCPaint);varACanvas:TCanvas;begininherited;ACanvas:=TCanvas.Create;tryACanvas.Handle:=GetWindowDC(Form1.Handle);withACanvasdobeginBrush.Color:=clRed;// Изменить цвет шрифта на красныйFont.Name:='Tahoma';// Установить имя шрифта в TahomaFont.Size:=8;// Установить размер шрифта в 8Font.Style:=[fsItalic,fsBold];// Установить стиль шрифта в итал. и жир.TextOut(GetSystemMetrics(SM_CYMENU)+GetSystemMetrics(SM_CXBORDER),Round((GetSystemMetrics(SM_CYCAPTION)-Abs(Font.Height))/2)+1,'Some Text');// Нарисовать текст в заголовкеend;finallyReleaseDC(Form1.Handle,ACanvas.Handle);ACanvas.Free;end;end;
В этом примере мы используем обработчик сообщения WMNCPaint для рисования заголовка. Мы устанавливаем имя шрифта в 'Tahoma', размер шрифта в 8, цвет шрифта в красный и стиль шрифта в итал. и жир. Затем мы нарисуем текст "Some Text" в заголовке.
Чтобы изменить выравнивание текста, можно использовать функцию TextOut с различными координатами по горизонтали и вертикали. Например, чтобы центрировать текст горизонтально, можно рассчитать координату x следующим образом:
Обратите внимание, что вам нужно рассчитать координаты x и y в зависимости от размера вашего текста. Формулы выше только примеры и могут не работать для всех случаев.
Как изменить шрифт и выравнивание в заголовке формы можно сделать за помощью процедуры FormPaint, где можно задать нужный шрифт и параметры выравнивания.
Комментарии и вопросы
Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.