我想TFontDialog在高 dpi 显示器上使用Delphi 10.3.3。
但不幸的是,Delphi 并没有真正扩展内容。(检查示例(Beispiel)的位置!)
我有2台显示器。主要有 96ppi,另一个 144ppi。我的应用程序正在第二个上运行。
你是如何在你的应用程序中解决这样的问题的?有没有办法解决这个问题,还是我必须希望 Delphi 10.4 能解决这个问题?
使用 200% 或更高时,您将无法再读取字体大小。
编辑 (2020-01-13):
一切都取决于 Delphi 的 DPI 感知集:
无、无意识和系统意识:
FontDialog 的大小为 648x518 像素,一切都很好,但很模糊
每个监视器:
FontDialog 的大小为 433x346 像素且太小 (100%)
每个监视器 V2:
FontDialog 的大小为 648x528 像素,一切都很清晰但不正确(见图)
我使用内部TZipFile.当我打开拉链时,德尔福似乎只打开它.只要未释放zipfile,就会拒绝文件访问
lZipFile := tZipFile.Create;
if lZipFile.IsValid( sPath) then begin
lZipFile.Open( sPath, zmRead );
...
// access denied to sPath
end;
lZipFile.Free;
Run Code Online (Sandbox Code Playgroud)
我只想读.为什么delphi表现得那样?如果我想多次访问一个zip文件,那么我必须制作一份本地副本并使用该副本?我真的不喜欢这种解决方法.首先,因为zipfile可能很大.
知道我可以做什么来同时以只读模式访问同一个zip吗?
我正在使用Delphi 10.2.3,并且想要更改DBgrid的背景颜色。例如,我有一个文本列和一个整数列。如果值不为零,我想根据文本更改整数单元格(在同一行中)的颜色。
我从如何给DBGrid特殊单元格着色中获得了一些想法 ? 所以我知道如何在OnDrawColumnCell中更改单元格的颜色。我可以更改文本的背景。但是我仍然不知道如何更改另一个单元格的颜色。当然,这很容易,而且我对明显的事物视而不见。