こんにちは私はPythonでTkinterを使ってタイムマシンの画像を閲覧するツールを作成しようとしています。ここからコードを使用する予定です:http ://code.google.com/p/python-ttk/source/browse/trunk/pyttk-samples/dirbrowser.py?r=21ディレクトリブラウザ用。スタートメニューを作成し、[参照]ボタンをクリックすると、ディレクトリブラウザが開き、ユーザーがファイルを選択して、パスがラベルに戻されます(これをラベルに追加する必要があります。ディレクトリブラウザコードはまだ)。以下は私のスタートメニューのコードです:
#!/usr/bin/python
from Tkinter import *
import ttk
class App:
def __init__(self,master):
frame = Frame(master)
frame.pack()
self.label = Label(frame, text="Please enter file path or browse to a file")
self.label.pack(side=TOP)
self.button = Button(frame, text="OK", command=messageWindow)
self.button.pack(side=BOTTOM)
self.hi_there = Button(frame, text="Browse")
self.hi_there.pack(side=BOTTOM)
self.entry = Entry(frame, width = 30)
self.entry.pack(side=LEFT)
root = Tk()
app = App(root)
root.mainloop()
Tkinterでは一度に2つのルートフレームを持つことはできないと読みましたが、ディレクトリブラウザにもルートフレームがあるため、代替手段を見つけるのに苦労しています。私がしていることが正しいかどうかはわかりませんが、参照用のボタンに次のように追加しました。
self.hi_there = Button(frame, text="Browse", command=dir)
私はディレクトリブラウザコードをクラス内に置き、それをdirと呼びました。だから私の考えは、私はクラス全体を呼び出すべきだということですか?しかし、dirという名前が定義されていないというエラーが表示されます。これを正しく行うにはどうすればよいですか?