Прозорий фон tgroupbox, блог delphi-програміста

Багато задавались питанням - А як же зробити прозорий фон в TGroupBox. Цей прозорий фон і зовсім непотрібний, якщо Ви в своїй програмі використовуєте скіни наприклад, тобто готові компоненти, які дозволяють скінізіровать Вашу програму, а також якщо Ви не використовуєте ніякого дизайну в своїй програмі. А тепер давайте зробимо так, встановіть на форму компонент TImage і у властивості Align задайте - alClient. Тепер у властивості Picture компонента TImage завантажте якусь фотографію. Відмінно, багато з допомогою даного компонента роблю собі дизайн програми, як зокрема я зробив в AS ImageDecoder. Тепер давайте на наш компонент TImage встановимо компонент TLabel. Відмінно тепер скомпілюємо програму і бачимо, який негарний фон написана Caption TLabel. Але тут вирішується все просто, у даного компонента (TLabel) є чудова властивість - Transparent. при установки якого в значення True. забирається даний фон і стає прозорим. Такого в компоненті TGroupBox наприклад нету і якщо ми його встановимо на TImage. побачимо те ж саме, що не гарно виглядає і фон не прозорий.

Прозорий фон tgroupbox, блог delphi-програміста

Щоб виправити це (щоб фон був прозорим), пропоную написати наступний код на подію форми OnCreate

Ми тут очищаємо стиль кисті і потім встановлюємо для хендлом TGroupBox значення TRANSPARENT. тобто прозорість і з допомогою InvalidateRect перемальовували його, звичайно скомпілювавши наш проект, ми побачимо, що текст написаний в Caption - TGroupBox знаходиться в непрозорому тлі, як спочатку і TLabel. що дуже не красиво.

Прозорий фон tgroupbox, блог delphi-програміста

Як бачите фон самого TGroupBox став прозорим, і тепер можемо поміщати в нього будь-які компоненти і буде відмінно все, але що робити з заголовком? Пропоную так вирішити проблему, взагалі прибираємо наш заголовок, і ставимо на форму TLabel і встановлюємо у даного компонента в властивості Transparent - True. далі на місце заголовка TGroupBox. я ставлю TLabel. майже не помітно, але зате прозорий фон, це можна застосувати майже з кожним візуальним компонентом. При певному тлі можна досягти майже відмінного результат, в загальному далі просто включаємо фантазію і фанатазіруем

Схожі статті