すべてをジャンプする方法はありますかダイアログボックス標準コードですか?ダイアログBOXをコードごとにどのようにジャンプするのですか?
たとえば、TaxVatTable.validateWrite
を呼び出すと、TaxVATNumValidateES\validateVATNum
というクラスを呼び出し、ここにボックスが存在し、表示したくない場合は解決策がありますか?
すべてのケースでダイアログボックスの機能を無効にする方法がありますか?
すべてをジャンプする方法はありますかダイアログボックス標準コードですか?ダイアログBOXをコードごとにどのようにジャンプするのですか?
たとえば、TaxVatTable.validateWrite
を呼び出すと、TaxVATNumValidateES\validateVATNum
というクラスを呼び出し、ここにボックスが存在し、表示したくない場合は解決策がありますか?
すべてのケースでダイアログボックスの機能を無効にする方法がありますか?
はい、\Classes\Box
の関連するメソッドを変更することができます。
問題はBox
メッセージはと判断されます。はユーザーによって作成されています。だから、彼らはいつも何を選んでいるのか、どうやって分かってるの?あなたは_defaultButton
を返すことができ、たぶんほとんどの場合O-Kになる可能性があります。
さまざまな種類のフォームを呼び出しますが、参照先のカーネルコードは\System Documentation\Classes\DialogBox
なので、オーバーライドできる最も低いポイントはBox
クラスです。
あなたが見ることができますどのようにこれを行うことによって、彼らショート:
if (clientKind() == ClientType::COMObject)
return _defaultButton;
EDIT:私はこれをやってお勧めしないことを追加したい
。呼び出された場所のコードを変更するだけです。あなたは機能的にフレームワークの一部を破ります。他の開発者は、ある時点でこの機能を呼び出す必要があります。
これは書式で使用されています。それが常にYes
を返すようにすれば、あらゆる種類の問題を引き起こす可能性があります。
ありがとう@アレックスKwitny、それは非常に退屈ですが、私はそこにダイアログボックスがあるすべてのポイントを見つける必要があります – ulisses
相互参照を使用して見つけるには数秒かかるでしょう。これはhttps://msdn.microsoft.com/en-us/library/aa877386.aspxに従って構築できます。次に、 'SystemDocumentation'または' Box'クラスの 'DialogBox'を右クリックし、' AddIns> Used Used'と言うだけで、使用されているすべての場所を識別できます。 –