Serviceを読んで理解し、同意したものとみなします。スタック・オーバーフローはプログラマーとプログラミングに熱心な人のためのQ&Aサイトです。106件0tkで準備されているmessageboxではなく、カスタムメッセージボックスを作りたいと考えています。要件としては、1.常にTopLevelであること。アプリケーションのコアとなるTkオブジェクトよりも、メッセージボックスが表示されている間は、メッセージボックスが前面にしたいです。2.メッセージボックス以外の操作が不可(モーダル)メッセージボックスが押されるまで、他のTKオブジェクトは操作できないようにしたい。3.メッセージボックスの戻り値を待つメッセージボックスの入力を待ってから次のアクション(ウィジットの表示/非表示等)に移りたい。4.アプリケーションの処理は継続したいアプリケーションのコアとなるTkオブジェクトは、afterメソッドにより定期的な処理は継続したい。5.カスタムメッセージボックスには標準のタイトルバーはつけたくない。このようなメッセージボックスをカスタムで作成したいのですが、うまくいきません。<実行結果>メッセージボックスは、モーダルにならず、閉じると以下のエラーになります。個の銅バッジこれが少し参考になるかも。4:38ありがとうございます。4:54grab_set_globalにより、モーダルにすることができました。エラー表示は解消できませんでした。Btn_Messagebox_clickedメソッドの2行目の処理は、メインウィンドウを閉じるまで実行されないことが分かりました。main_loopメソッドから戻ってこないようです。それに関連するらしき記述がありそうです。票0どうやら自己解決できたようです。エラーのメッセージdialog_mouse_releaseから、マウスのリリースイベントを通知したいのに、ダイアログが破棄されてしまっていることが原因と推定しました。CreateDialogメソッドにおいて、Button-1、B1-Motion、ButtonRelease-1をバインドしています。これは、タイトルバーに代えてself.Title_Barをドラッグするとボックスを移動させるためにバインドしています。そこで、btn_msgbox_clickedメソッドにおいては、フラグ変数:self.isDestroyを用いて、その後にバインドされたdialog_mouse_releaseメソッドが呼び出されるので、そこからdestroyメソッドを呼ぶように変更しました。|回答スタック・オーバーフローに参加してくれて、ありがとうございます!質問の回答を共有してください。回答を説明し、自分の検討結果も共有してください。意見を述べること(意見を述べるなら、参照リソース、自分の経験で意見をサポートしてください)さらにサポートが必要な場合このヘルプを参考してください。“回答を投稿”をクリックすることで利用規約、プライバシーポリシー、及びクッキーポリシーに同意したものとみなされます。タグが付いた他の質問を参照するか、自分で質問をする。選択した後、未選択状態にしたい。ImageTkでRuntimeErrorが発生する。質問のフィードこのRSSフィードを購読するには、このURLをコピーしてRSSリーダーに貼り付けてください。