У меня проблема с наличием интерфейса GUI, который будет реализован через второй файл, который просто содержит файл для чтения, сделанные графики и некоторые новые функции, которые должны быть оценены на основе этого.
Я пытаюсь создать приложение с графическим интерфейсом, используя Tkinter.То, как я делаю, заключается в следующем.У меня есть фоновый скрипт (скажем, Background.py), который имеет две функции.Функция X загружает файл данных, выполняет некоторые вычисления и выводит график.Я хочу вызвать это с помощью графического сценария в другом файле (GUI.py), который открывает панель с кнопкой, и когда я нажимаю кнопку, функция X в файле Background.py должна быть оценена, и должен быть показан график.,После проверки графика я могу нажать другую кнопку, чтобы закрыть график и завершить функцию X. Теперь я могу выбрать другую кнопку, чтобы вызвать функцию Y в файле Background.py.Эти кнопки должны позволять мне вводить три значения, которые должны быть введены для функции Y в файле Background.py.Как только я нажму эту кнопку, она должна вызвать функцию Y и сделать то, что она просит.Теперь в конце, после этого я могу нажать кнопку, чтобы закрыть графический интерфейс.
Как я могу это сделать ?.Общая грубая идея будет полезна.
Я привел пример, насколько смогу :( по крайней мере, скелет кода) У меня есть фоновый файл скажем (Background.py) и файл графического интерфейса (скажем GUI.py)
Background.py
import numpy
import matplotlib.pyplot as plt
import pandas
def progX():
df = pd.read (myfile)
##df.stats # doing something and generating a plot from the file
plt.boxplot(df['col'])
plt.show()
def progY(y1, y2,y3):
## get the y1, y2, y3 from the GUI interface which the user has entered
#run a code... and generate an output file
GUI.py
import Background as bg
from tkinter import *
from tkinter.ttk import *
class GUI ():
def create widgets(self):
#....
def create_panel2(self):
#create buttons
panel1 = ...
btn1 = Button(panel1, text="yyyyy", command=bg.progA)
btn1.pack()
def create_panel2(self):
#create buttons
panel2 = ...
btn2 = Button(panel1, text="yyyyy", command=bg.progB)
btn2.pack()
All_Entries = []
window = Tk()
D=GUI(window)
window.mainloop()
runprogram1 = bg.progX()
runprogram2 = bg.probY(x, y, z)
Теперь мой вопрос, имеет ли смысл приведенное выше?Как я могу вызвать фоновые функции из графического интерфейса?Операторы runprogram1 и runprogram2 определенно не верны, как я могу это реализоватьТакже, как я буду гарантировать, что я вызову программу Y в фоновом режиме, как только я закрою вывод из программы X?
Полагаю, вопросы имеют смысл.Я новичок в GUI и с трудом решаю это, что мне нужно.любая помощь будет очень ценится.