有没有办法在画布上绘制然后使用updatelayeredwindow,所以不会看到表单,但文本,如只显示文本的transculent表单?如果没有,那么有没有办法制作某种只有画布(opengl / directx)的变形形式?我想在
Color := clBlack; SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) or WS_EX_LAYERED ); SetLayeredWindowAttributes(Handle, 0, 255, LWA_COLORKEY);
将使表单客户区透明.您可以像往常一样在画布上绘画:
procedure TForm1.FormPaint(Sender: TObject); begin Canvas.Font.Color := clWhite; Canvas.TextOut(0, 0, 'Text'); end;
当然,您也可以在表单上放置一个标签,其字体颜色与透明颜色不同.