15 мая 2023 года "Исходники.РУ" отмечают своё 23-летие!
Поздравляем всех причастных и неравнодушных с этим событием!
И огромное спасибо всем, кто был и остаётся с нами все эти годы!

Главная Форум Журнал Wiki DRKB Discuz!ML Помощь проекту




Как изменить фоновый цвет текста

Воспользуйтесь API функциями SetBkColor и TextOut.

procedure TForm1.Button1Click(Sender: TObject);
var
  OldTextColor : TColorRef;
  OldBkColor : TColorRef;
  OldBkMode : Integer;
begin
  OldTextColor := SetTextColor(Form1.Canvas.Handle, RGB(0, 0, 255));
  OldBkColor := SetBkColor(Form1.Canvas.Handle, RGB(255, 0, 0));
  OldBkMode := SetBkMode(Form1.Canvas.Handle, OPAQUE);
  TextOut(Form1.Canvas.Handle,
          100, 100,
          'Синий текст на красном фоне',
          27);
  SetBkMode(Form1.Canvas.Handle, OldBkMode);
  SetBkColor(Form1.Canvas.Handle, OldBkColor);
  SetTextColor(Form1.Canvas.Handle, OldTextColor);
end;