![]() |
1
6
我找到了一个解决办法。Delphi似乎有一些与此相关的错误:
更新: 正如mghie所指出的,我最初在调用消息时使用硬编码值15的想法在不同的dpi设置下效果不佳。所以我现在使用一个call来获取extmetrics来确定高度。添加到字体高度的是getSystemMetrics(sm_cyborder)的值。 这是基于VCL确定Tedit大小的方式。我不认为这是完全正确的,但由于目标是拥有与泰迪大小相同的组合框,它可能是我们将得到的最接近。它可以在96、120、144和192的dpi设置下工作。 组合框的高度由项目-1的高度决定。因此,从0到count-1的项是实际的列表项,但item-1是用于编辑器的高度。如果将该高度设置为15,则控件的高度将更正为21像素。 (有关缩放问题,请参阅上面的更新) .我认为梅森可能是对的,字体大小在这里起到了一定的作用(可能会调整项目的大小),但你可以通过调整项目大小使其正常工作。 它似乎引入了一个新的问题(在我看来,较小的问题),即在96 dpi 16像素高的图像中,当显示在编辑器部分时,最下面的一行松动,但这几乎不明显。 因此,解决方法是调用以下代码:
|
![]() |
2
1
tcomboBox的高度不是绝对的;它与您使用的字体高度相关。tcomboxex的工作原理是一样的,但它似乎有一个额外的“开销”像素,正如您所指出的,而且似乎没有任何简单的方法可以改变这个情况。如果这是一个内置Windows控件的包装器,那么在delphi级别,period上可能没有任何方法可以更改它。 |
![]() |
Some1Else · 函数在Delphi中重新创建TForm 2 年前 |
![]() |
Agmcz · Delphi安卓库。so未安装(AAB) 2 年前 |
![]() |
nader · 如何使用delphi在web上提交表单 6 年前 |
![]() |
kwadratens · Delphi中的卡方分布函数代码 6 年前 |
|
user9672569 · 如何在完整的位图图像中绘制阴影效果? 6 年前 |
![]() |
mmmm · MSBuild(用于Delphi)Make-like功能 6 年前 |