我的默认FMX应用程序启动非常缓慢,在某些事件上会冻结一段时间。例如:当我点击一个按钮时,整个应用程序会冻结几秒钟(但仅在该事件的第一次执行时)。因此,我认为这可能是GPU问题,并将默认的Dpr文件编辑为;
uses
FMX.Forms, fmx.Types,..
{$R *.res}
begin
Application.Initialize;
GlobalUseHWEffects := False ;
GlobalUseDirect2D := False ;
GlobalUseDirect2DSoftware := False ;
GlobalUseGDIPlusClearType := True ;
GlobalDisableFocusEffect := True ;
Application.CreateForm(...);
Application.Run;
end.
现在,它按照我预期的工作,没有任何问题,但是CPU使用率与以前相同(当鼠标移动时为25%)。
然后我修改了我的代码如下:
GlobalUseHWEffects := true ;
GlobalUseDirect2D := False ;
GlobalUseDirect2DSoftware := False ;
GlobalUseGDIPlusClearType := True ;
GlobalDisableFocusEffect := True ;
现在一切都很顺利,只有启动时间稍微有点延迟,并且CPU使用率非常低(0-2%)。 (这就是为什么我需要Firemonkey)
现在除了菜单栏之外,所有控件都按预期工作,上述设置未应用于菜单栏,它使用默认行为运行(整个应用程序会冻结几秒钟)。
我该怎么解决这个问题。