前提・実現したいこと
はじめて利用するので至らないところもありますがよろしくお願いします。
実現したいこと:Pythonで作成したGUIからファイルを選択し、各項目の変数を入力した後GUIからボタンクリックで変更できるプログラムを作成したいです。
現状:Fileからファイルを選択でき、Bodyのmassやcenter_of_massにテキストに入力することまでできました。
今後の展開として、選択したファイルの中にある変数massやcenter_of_massの値をテキストに入力してその値でcmdが実行、もしくは一度ファイルをその値に書き換えるボタンを追加してその後実行ボタンを押すとcmdで処理をしたいのですがどのように進めていけばよいかわかりません。
選択したファイルにはmass = 1000のように宣言しています。
Pythonは使い始めたばかりなのでご教授願います。
発生している問題・エラーメッセージ
該当のソースコード
# Tkinterのライブラリを取り込む --- import tkinter as tk import tkinter .ttk as ttk import tkinter.filedialog import os import tkinter.messagebox # ウィンドウを作成 --- win = tk.Tk() win.title("GUI") # タイトル win.geometry("800x400") # サイズ #ボタンイベント def btn_click1(): fTyp = [("Python", "py")] iDir = os.path.abspath(os.path.dirname(__file__)) file_name = tkinter.filedialog.askopenfilename(filetypes=fTyp, initialdir=iDir) txt_4 = tk.Label(tab_zero, text=file_name,background = 'whitesmoke') txt_4.place(x=30, y=180) def btn_click2(): mass = txt_1.get() txt_3 = tk.Label(tab_one, text=mass,background = 'whitesmoke') txt_3.place(x=30, y=170) #Notebookウェジェットの作成 notebook = ttk.Notebook(win) #タブの作成 tab_zero = tk.Frame(notebook,bg='whitesmoke') tab_one = tk.Frame(notebook,bg='whitesmoke') tab_two = tk.Frame(notebook,bg='whitesmoke') #nootbookにタブ追加 notebook.add(tab_zero,text="File") notebook.add(tab_one,text="Body") notebook.add(tab_two,text="Engine") #label = ttk.Label(tab_one,text="Notebook",background='white') #ウィジェットの配置 notebook.pack(expand=True,fill='both',padx=10,pady=10) #label.pack() #ラベル lbl_1 = tkinter.Label(tab_one,text='mass',background='whitesmoke') lbl_1.place(x=30,y=70) lbl_2 = tkinter.Label(tab_one,text='center_of_mass',background='whitesmoke') lbl_2.place(x=30,y=120) #テキストボックス txt_1 = tkinter.Entry(tab_one,width=20) txt_1.place(x=180,y=70) txt_2 = tkinter.Entry(tab_one,width=20) txt_2.place(x=180,y=120) #ボタン btn1 = tkinter.Button(tab_zero,text='ファイルを選択',command = btn_click1,width=18) btn1.place(x=30,y=70) btn2 = tkinter.Button(tab_one,text='実行',command = btn_click2,width=18) btn2.place(x=180,y=170) # ウィンドウを動かす --- win.mainloop()
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
Python 3.7
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。