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

iezvtpos  于 2022-11-04  发布在  其他
关注(0)|答案(1)|浏览(145)

由于以下脚本,我可以将整个表单布局更改为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;

实验结果:

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

cwdobuhd

cwdobuhd1#

我搜索了MSDN,发现这是镜像问题,通过在Params.ExStyle中添加WS_EX_NOINHERITLAYOUT解决了这个问题:

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

相关问题