我一直在使用类似的代码
MessageDlg('', mtWarning, [mbOK], 0);
Run Code Online (Sandbox Code Playgroud)
整个项目,(感谢GExperts消息对话工具:))我想知道是否有人知道一种方式覆盖调用并显示我自己的自定义表单.
我能想到的唯一方法就是制作一个类似的新形式
function MessageDlg(const Msg: string; DlgType: TMsgDlgType;
Buttons: TMsgDlgButtons; HelpCtx: Longint): Integer;
begin
//show my own code here
end;
Run Code Online (Sandbox Code Playgroud)
并在Dialogs单元之前将它放在每个使用列表中,但是有一种保证的方法可以确保它使用我的代码而不是Dialogs单元代码.
我不喜欢将对话框单元复制到本地目录并对其进行更改的想法.
或者这是多少工作,我应该只使用我自己的函数调用并用我自己的所有MessageDlg替换.(这不会很有趣,我错误地使用了MessageDlg)
顺便说一下,你想在uses子句中的Dialogs单元之后添加它.
在我看来,你有三个选择:
第一个是有问题的,因为你可能会错过一个单元并仍然得到旧的MessageDlg.第二个需要更多的使用,但从长远来看提供了更好的灵活性.第三个可能是最简单的,也是最不利的.确保在进行替换之前进行备份,然后使用diff工具(如Beyond Compare)检查更改.