• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Как Сделать Label С Прозрачным Фоном?

  • Автор темы Автор темы IllusionYes
  • Дата начала Дата начала
I

IllusionYes

Вывожу рисунки функцией Draw на форму из ImageList после нажатия на кнопку.
после изменения текста в лабел прямоугольник фона этого элемента закрывает рисунок.
Свойство Transparent у Label никак не влияет.
Как выйти из положения?
 
Вывожу рисунки функцией Draw на форму из ImageList после нажатия на кнопку.
после изменения текста в лабел прямоугольник фона этого элемента закрывает рисунок.
Свойство Transparent у Label никак не влияет.
Как выйти из положения?
Если функцией Draw битмапы рисуете, то лабел дорисовывать придется самому... :)
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
OldBkMode: integer;
OldFont: TFont;
begin
// Bitmap1 - Ваш битмап из ImageList
// Label1 - лабел перекрывающий битмапа

// нарисовали битмап
Canvas.Draw(100,100,Bitmap1); 

// запомнили состояние канвы, включили прозрачность
OldBkMode := SetBkMode(Canvas.Handle, TRANSPARENT);
OldFont := Canvas.Font;

// "починили" текст лабела
Canvas.Font := Label1.Font;
Canvas.TextOut(Label1.Left,Label1.Top,Label1.Caption);

// восстановили исходное состояние канвы
Canvas.Font := OldFont;
SetBkMode(Canvas.Handle, OldBkMode);
end;
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab