2016-04-06 9 views
0

私はTkinterを探していましたが、最近はフォルダを監視して内部にいくつのファイルがあるかを確認するための小さなプログラムを作成しました。Tkinter - Windowsエクスプローラでディレクトリウィンドウを開く方法

Windowsエクスプローラでフォルダを開くボタンを作成したいと思いますが、情報を見つけることができません。

誰にでもアイデアがありますか?

乾杯、迅速な対応のための ジョン

おかげで私はすでに似た何かをしようとしたと思いますが、私はおそらく何か間違ったことをやっています。ここに私のコードです:

def open(): 
    os.system("explorer C:\\ folder dir") 

label1 = Button(self, text="Pre TC", fg="red", font=("Ariel", 9, "bold"), command=open) 
+1

'os.system( 'start C:/ Users /')'? – TigerhawkT3

+0

ちょっと質問に私の元のコードのいくつかを追加しました。私はおそらくsomehtingをしています間違ってthoが必要な場合はすべてを追加することができます –

答えて

0

label1またはbutton1がオブジェクトである同じクラス名で定義された関数を呼び出すときは、selfを使用する必要があります。それ以外の場合は、関数が見つからないため、Tkinterコールバック例外が発生します。

なぜ、self.openに名前を変更しても、名前を変更するのはなぜですか?

0

ラベルオプションでコマンドオプションを使用することはできません。そのボタンを作ってみてください。うまくいくはずです!

+0

は既にボタンではないですか?私はそれをラベル1と呼んでいることは分かっていますが(混乱して愚かなことですが)、その後はボタンでなければならないと述べています。 (おそらく間違った笑)ボタンを押したときにcmdをチェックしたが、この応答が返ってくる:Tkinterコールバックの例外 トレースバック(最新の呼び出し最後): ファイル "C:\ Python27 \ lib \ lib-tk \ Tkinter.py "、行1470、__call__ return self.func(* args) TypeError:必須引数 'name'(pos 1)が見つかりません –

+0

私の間違いは、それを見ていませんでした。 – nihal111

0

お手数をおかけしていただき、ありがとうございました。

私は何をしたのですか?100%ではありませんが、自分自身をopen()の引数としてself(open)(self)を追加し、self.openというコマンドとして追加しました。だから私の質問から編集されたコードは次のようになります。自己引数がなければならないかの方向に私を指すことができ、なぜ誰もが知っている場合

def open(self): 
    os.system("start C:/folder dir/") 

button1= Button(self, text="Pre TC", fg="red", font=("Ariel", 9, "bold"), command=self.open) 

(また、ボタンの名前を変更しました)より多くの情報を大いに感謝します。

乾杯! Jon