2017-11-04 13 views
1

のための出力フォルダを選択した後、Tkinterのウィンドウを閉じることができません出力ディレクトリを選択します。は、私はこのような機能を持っているスクリプト

スクリプトは、すべてのデータを通じて解約するために数分かかり、そしてスクリプトが完了するまで、すべての中には、出力ディレクトリを選択するためのTkinterウィンドウが凍結したままになります。

など。私のスクリプトは次のように編成されています

def massive_function(): 
    input = custom_reader_function(input_location = ask_open_directory()) 
    output = ask_open_directory() 

    lots of stuff happening 
    finish 

私は何が欠けていますか?

答えて

0

達成しようとしているのは、Tkinter.Tk()インスタンス以上のことを正当化するものではありません。

つまり、機能からroot = Tk()root.withdraw()、およびroot.destroy()を削除する必要があります。個々の機能ではなく、メインプログラムでTkinter.Tk()をインスタンス化する必要があります。

+0

提案された変更を加えても、違いはありません。私が '.withdraw()'を見つけていないので、今は白いフローティングボックスが表示されます。 –

+0

EDIT:上記のスクリプトで 'root.update()'が目的の効果を得ていることがわかりました。たとえそれが望ましい結果を出すとしても、そうするのは私の間違いですか?私はすべてのファイル選択ダイアログに対してTkをインスタンス化することによって余分なオーバーヘッドが発生するかもしれないと思いますか? –

関連する問題