繁体   English   中英

如何将表单标题栏的布局更改为 RTL?

[英]How to change layout of form title bar to RTL?

感谢以下脚本,我可以将整个表单布局更改为 RTL。

procedure TfrmTest.CreateParams(var Params: TCreateParams);
begin
  inherited CreateParams(Params);
    Params.ExStyle := WS_EX_LEFT or WS_EX_LTRREADING or WS_EX_LEFTSCROLLBAR
     or WS_EX_LAYOUTRTL;
    {WS_EX_LEFT to set the text caption to the right,
    use WS_EX_RIGHT to set the caption to the left}
end;

结果:
在此处输入图像描述

但是如何更改表单标题栏而不是表单内的整个控件?

我搜索了 MSDN,发现这是一个镜像问题。 它通过将WS_EX_NOINHERITLAYOUT添加到Params.ExStyle来解决:

procedure TfrmTest.CreateParams(var Params: TCreateParams);
begin
  ... 
  Params.ExStyle := ... or WS_EX_NOINHERITLAYOUT;
end;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM