在调整好控件的尺寸后,所有控件占用的宽度也会发生变化。以本程序为例,最宽处为:间隔1+文本框宽度+间隔2+下拉框宽度+间隔1。
在调整好控件的尺寸后,所有控件占用的高度也会发生变化。以本程序为例,最高处为:间隔1+Label高度+间隔2+文本框高度+间隔2+按钮高度+间隔1
在调整完控件的尺寸后,对应窗口的尺寸也需要重新调整,所以我们还需要知道窗口边框的厚度。
其中,左、右、下边框的厚度是一样的。
有了以上数据,就可以调整窗口的尺寸了。
当改变完控件的尺寸后,控件的位置也需要重新进行调整,不然会发生控件错位、重叠等情况。
在调整位置时,一般以左上角的控件为准进行调整,本例便以左上角的Label为基准进行调整。
高DPI的适配,技术难度并不高,更多的是耐心与细心。
因为在进行尺寸与位置的调整时,需要进行大量的重复性计算,很考验耐心。
除了这些之外,如果程序中使用了【图标】、【图片】等元素,也需要进行相就的选择和替换。
以我个人经验,适配时都是分为十个级别(参看(原创)高DPI适配经验系列:(二)按DPI范围适配),所以每组图标和图片都需要准备十份,这更是一份考验耐心与细心的活。