当我在ButtonClick事件上从表单调用一个ButtonClick时。该对话框不显示为模态,也显示在任务栏中(在WindowsXP中)。我可以返回主表单并一次又一次地单击“打开”--一次弹出几个对话框。
我如何使一个OpenDialog成为模式在火猴?它是专门制造的,不允许任何模态对话,因为多平台的调频?
编辑:错误在更新3中被修复。
发布于 2011-11-30 23:57:14
我觉得是个虫子。FireMonkey中有很多模式类型的错误,希望它们很快就能修复。目前,甚至连模态形式都不是模态。
对于您的问题,我有一个解决办法,Windows,但您可能不喜欢它。
您需要在TPlatformWin.DialogOpenFiles()方法中修复FMX.Platform.Win中的下面一行。
在with OpenFile do变更项下:
hwndOwner := 0;对此:
hWndOwner := FmxHandleToHWND(Application.MainForm.Handle);该函数使用Windows调用,尽管它在GetOpenFileName和更高版本上不受欢迎。如果传入所有者句柄,则对话框是模态的,否则不是。
您可能希望将其作为一个bug提交给qc.embarcadero.com以及解决方法。
https://stackoverflow.com/questions/8323690
复制相似问题