秋·风

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
这个方法是在Lazarus高DPI控制位置移动问题与解决 - 禁卫军 - 博客园基础上改进的:
procedure TForm1.FormCreate(Sender: TObject);
begin
  if Screen.PixelsPerInch<>self.DesignTimePPI then
  begin
    ScaleBy(self.DesignTimePPI,Screen.PixelsPerInch);
  end;
end;

windows:
左中2图是在虚拟机运行时的界面:
左边的图:没进行DPI处理
中间的图:用上面的代码处理
右边的图:在lazarus编程(Design)电脑运行时的界面

QQ_1756781126076
交叉编译后在Linux运行:
左边的图:没处理DPI
右边的图:用上面的方法处理DPI后的界面
2025-09-02_11-12-31

 

posted on 2025-09-02 10:53  秋·风  阅读(144)  评论(0)    收藏  举报