2016-10-25 7 views
0

私はサイトに新しく、python(と一般的なコーディング)の初心者ですので、私と一緒に裸です:) 私はキャプチャされたファイルパスを取るために探していますtkFileDialogを使用してファイルを選択し、そのファイルを開いて別のスクリプトを実行できる別のスクリプトに渡します。ここでの最終目標は、2つのXMLファイルを選択して比較することです。外部スクリプトは確認ボタンによってトリガーされ、テキストフレーム内の2つのファイルの間に見つかった差異を出力します。1つのスクリプトから別のクラスにクラス変数を渡す方法

import Tkinter 
import tkFileDialog 
from Tkinter import * 
from tkFileDialog import * 

class GUI: 
    def __init__(self, master): 
     self.master = master 
     path1 = StringVar() 
     path2 = StringVar() 

     master.title("XML Compare Tool") 
     master.geometry('700x300') 

     self.bb1 = Button(master, text="Browse", command=lambda: path1.set(tkFileDialog.askopenfilename())) 
     self.bb1.grid(row=0, column=0, padx=5, pady=5) 

     self.bb2 = Button(master, text="Browse", command=lambda: path2.set(tkFileDialog.askopenfilename())) 
     self.bb2.grid(row=1, column=0, padx=5, pady=5) 

     self.confirm = Button(master, text="Confirm", command='') 
     self.confirm.grid(row=3, column=1, padx=5, pady=5, sticky='') 

     self.entry1 = Entry(master, width=75, textvariable=path1) 
     self.entry1.grid(row=0, column=1, columnspan=2, sticky=W) 

     self.entry2 = Entry(master, width=75, textvariable=path2) 
     self.entry2.grid(row=1, column=1, sticky=W) 

     self.t_label = Label(master, text="Script Output") 
     self.t_label.grid(row=4, column=1, columnspan=1, sticky='') 

     self.t_frame = Frame(master, bg="white", height=150, width=600) 
     #self.t_frame.place(x=25, y=120, height=250, width=690) 
     self.t_frame.grid(row=5, column=1, columnspan=1, sticky='') 
     self.t_text = Text(self.t_frame) 
     #self.t_text.pack(expand=True, fill='both') 

root = Tk() 
my_gui = GUI(root) 
root.mainloop() 
+1

あなたは学習しているので、本当に必要でない限り、「ラムダ」を避けることをおすすめします。あなたのボタンは、適切な関数/メソッドを呼び出す必要があります。プログラムの作成方法を今すぐ学習している場合は、特にコーディングが非常に簡単になります。 –

+0

外部スクリプトがPythonスクリプトで、コードが関数で編成されている場合は、このスクリプトをインポートして関数を呼び出すことができます。 – furas

答えて

-1

あなたの問題は実際には引数をtkinterコールバックに渡していると思います。 thisは役に立ちますか?

+0

これはあまり良い答えではありません。この質問に対する回答の一部をお読みください:[他の場所のリンクだけが本当に "良い答え"を含んでいるのか?](http://meta.stackexchange.com/questions/8231/are-answers-that-just-contain-リンク - 他の場所 - 本当に良い回答) –

関連する問題