2011-02-03 13 views
0

アイデアは、私は2つまたは3つの異なるウィンドウを持っていて、私は関数を呼び出すことによってそれらを自動的に開いて閉じたいと思います(それぞれのウィンドウを開いたり閉じたりする別々の関数)。プログラム自体はバックグラウンドで実行されますが、特定のイベントが発生した場合、ウィンドウを開く機能が呼び出されます。別のイベントでウィンドウが閉じられるか、またはウィンドウ#2が開くなど関数を呼び出してウィンドウを開閉しますか?

これは一般的な考えです。今、私は関数を呼び出すことによって開くことができる1つのウィンドウのために解決します。だから、一言で言えば、ウィンドウを開くが、プログラムをバックグラウンドで実行してウィンドウを破壊するコマンドを待つ関数。

これも可能ですか?

私はtkinterソリューションを探していますが、これまでのところこれまで働いていませんでした。 tkinterの理由は、マウスをその上に移動しない限り、wxpythonはウィンドウを閉じないためです。

さらに、私はいつも他のすべての上にある境界のないウィンドウを作っています。私はそれにはもう少し適したコードを持っていますが、それは決定的なものではありません。

PS。はい、私はそれがうまく構成されていない質問だと分かっています。だからこそ私が求めているのは...

+1

どのプラットフォームですか? – ChristopheD

答えて

1

wxWindowsではダイアログ/ウィンドウで.destroy()メソッドを呼び出して削除するだけです。その上にマウスを移動する必要はありません。それはwxWindowsアプリケーションを非常に厄介なものにするでしょう。

あなたの問題は、wxイベントフレームワークの外側で何かをしようとすることに関連していると思われます。ほとんどのGUIはイベント駆動型なので、別のスレッドで実行してGUIフレームワークに信号を送り、イベントハンドラのコールバックでコードを実行させてイベントハンドラがイベントハンドラを管理できるようにします。あなたのコードであなたが呼び出したdestroy()メソッド。

関連する問題