软件在不同的显示分辨率下出现变化

shijies 2017-09-16 01:26:33
感觉在设计时使用的是屏幕的像素坐标,在不同显示分辨率下,图像的坐标与大小与窗体的变化不协调了。
...全文
956 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
shijies 2017-09-27
  • 打赏
  • 举报
回复
很早以前我曾请人做过网页,在640*480显示分辨率下看很好,但是换到800*600分辨率,很早以前我曾请人做过网页,在640*480显示分辨率下看很好,但是换到1027*768分辨率,图像的位置就发生了变化,可是新浪网就不是这样的,不知道是为什么。
adslong 2017-09-23
  • 打赏
  • 举报
回复
设置Align,Margins属性,不同系统还要微调。
jjpweb 2017-09-22
  • 打赏
  • 举报
回复
Self.Scaled := True; Self.ScaleBy(Screen.Width, 你窗体的宽度);
hongss 2017-09-18
  • 打赏
  • 举报
回复
引用 3 楼 shijies 的回复:
java语言可以不采用屏幕像素的绝对值,而是用相对值,例如:组件在窗口的什么位置,图片的大小取相对于窗体的尺寸,这样可以避免图片在窗体中的相对位置和大小产生变化,不知Delphi如何解决这样的问题。
Delphi可以用控件的Align,Margins等属性来实现这些
  • 打赏
  • 举报
回复
这不是显示分辨率变化造成的,而是DPI变化造成的,同样分辨率,你在96DPI下设计的程序,放到120DPI环境下运行,windows会对窗口(所有windows标准控制都是窗口)大小进行缩放,以像素计算的窗口尺寸就发生了变化。
shijies 2017-09-17
  • 打赏
  • 举报
回复
java语言可以不采用屏幕像素的绝对值,而是用相对值,例如:组件在窗口的什么位置,图片的大小取相对于窗体的尺寸,这样可以避免图片在窗体中的相对位置和大小产生变化,不知Delphi如何解决这样的问题。
doloopcn 2017-09-16
  • 打赏
  • 举报
回复
将FORM的计量单位设置为PIXES,一般不会影响太大吧
lyhoo163 2017-09-16
  • 打赏
  • 举报
回复
这是VCL的缺点。

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi GAME,图形处理/多媒体
社区管理员
  • GAME,图形处理/多媒体社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧