SetBkMode可设置文字背景色:TRANSPARENT或OPAQUE

Posted 朝闻道

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SetBkMode可设置文字背景色:TRANSPARENT或OPAQUE相关的知识,希望对你有一定的参考价值。

感受一下区别:

procedure TForm1.Timer2Timer(Sender: TObject);
var
  cvs: TCanvas;
  Rect: TRect;
  Str: string;
begin
  EXIT;
  cvs := TCanvas.Create;
  cvs.Handle := GetDC(0);
  SetBkMode(cvs.Handle, TRANSPARENT);
  //cvs.Font.Name := ‘宋体‘;
  cvs.Font.Style := [fsBold, fsItalic];
  cvs.Font.Size := 48;
  Randomize;
  cvs.Font.Color := Random($FFFFFF);
  Rect := Screen.DesktopRect;
  Str := 万一的 Delphi 博客;
  cvs.TextRect(Rect, 300, 300, Str);
  cvs.Free;
end;

改成OPAQUE以后,没感觉有什么区别,待续。。。

以上是关于SetBkMode可设置文字背景色:TRANSPARENT或OPAQUE的主要内容,如果未能解决你的问题,请参考以下文章

二维码相关知识

Uniapp 动态修改状态栏导航栏背景色字体颜色插件 Ba-AppBar

Uniapp 动态修改状态栏导航栏背景色字体颜色插件 Ba-AppBar

Windows API一日一练 27 SetBkMode函数

Qt 搜索框

Java 设置Word页面背景色