私は WindowsAPICodePack の TaskDialog 実装を使用していますが、より基本的な実装であってもボタンのクリック ハンドラーをリッスンする必要があることに悩まされています。古い MessageBox のように、閉じられるまでブロックし、行われたことに基づいて値を返すように変換/ラップしたいと思います。これを行う方法の基本について読むことができるものはありますか? 確かに私は Win32 の基盤にあまり詳しくないので、どこから始めればよいかわかりません。
1 に答える
0
それが誰かを助ける場合に備えて、いくつか読んだ後、 Show 呼び出しがすでにブロックされていることがわかりました。値を返すために、TaskDialog の親を割り当てるためのヘルパーメソッドと抽象メソッドExtendedTaskDialog<T>
を含む基本クラスを実装しました。実際のダイアログはこれから派生し、独自の列挙型を派生してベース タイプとして提供します。次に、内部的に、「ボタン」のクリック ハンドラーは、内部のメソッドを呼び出す前に結果を設定します。TaskDialog
Show(Window)
public T Show(Window)
MyDialog : ExtendedTaskDialog<MyDialogResult>
MyDialog
Close
TaskDialog
于 2010-05-15T20:27:47.440 に答える