Python Tkinter использует фрейм данных, полученный в результате определения одной функции (self, event) в другой функцииPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Python Tkinter использует фрейм данных, полученный в результате определения одной функции (self, event) в другой функции

Сообщение Anonymous »

У меня есть поле со списком в одном «подэкране», и я фильтрую исходный фрейм данных со значением поля со списком, но я не могу использовать полученный фрейм данных, чтобы показать его в функции древовидного представления или где-либо еще. Я не знаю, как вызвать эту функцию, чтобы использовать ее где-то еще.
####Это мой подэкран########
класс MantPrev( tk.Frame):
def init(собственный, родительский, контроллер):
tk.Frame.init(собственный, родительский)
super().init(родительский)

Код: Выделить всё

    self.tabla_data()
self.loc_combo()

def loc_combo(self):
conexion = CNX()
CombValue1 = ComboLoc()
calc_sinv = pd.DataFrame()
sql = "  SELECT etc' "

try:
conexion.cursor.execute(sql)
calc_sinv = conexion.cursor.fetchall()
conexion.cerrar()
except:

col_name = ([desc[5] for desc in conexion.cursor.description])

self.algo_var = tk.StringVar()
self.algo_combo1 = ttk.Combobox(self, width=30)
self.algo_combo1['values'] = ComboLoc()
self.algo_combo1.set('')
self.algo_combo1.place(x=50, y=40)  # grid(row=32, column=2, padx=0, pady=1)
self.algo_combo1.bind("", self.location)
self.algo_combo1.delete("0", tk.END)

def location(self, event):
df1 = CL001()
loc_selected = self.algo_combo1.get()
self.df2 = df1[(df1.LOCATION == loc_selected)]
return self.df2
####Мне удалось напечатать self.df2, но я не могу использовать его в другой функции####

Код: Выделить всё

def tabla_data(self):

self.Sele =  location()#####is not working# .to_numpy().tolist()

self.tablaO = ttk.Treeview(self,
columns=('a', 'b', 'c', 'd'), height='20',
selectmode=tk.NONE)
self.tablaO.grid(row=20, column=0, columnspan=3, pady=4)
self.tablaO.place(width=1000, height=300)
self.tablaO.place(relx=0.5, rely=0.5, anchor=CENTER)

self.tablaO.heading('#0', text='Localización')
self.tablaO.heading('#1', text='Descripción_MP')
self.tablaO.heading('#2', text='Fecha_Estatus_OT')
self.tablaO.heading('#3', text='Estatus_OT')
self.tablaO.heading('#4', text='Elemento')

self.tablaO.column('#0', width=140)
self.tablaO.column('#1', width=140)
self.tablaO.column('#2', width=140)
self.tablaO.column('#3', width=140)
self.tablaO.column('#4', width=140)

self.tablaO.delete(*self.tablaO.get_children())  # Delete all times inside the treeview
for p in self.Sele:
self.tablaO.insert('', 0, text=p[3],
values=(p[11], p[1], p[2], p[13]))

labl_1 = Label(self, text="Localización", width=24, font=("bold", 10))
labl_1.place(x=50, y=10)

labl_11 = Label(self, text="Elemento", width=24, font=("bold", 10))
labl_11.place(x=300, y=10)

labl_2 = Label(self, text="Fecha Inicio MP", width=20, font=("bold", 10))
labl_2.place(x=550, y=10)

labl_3 = Label(self, text="Fecha Fin MP", width=20, font=("bold", 10))
labl_3.place(x=750, y=10)  # (x=ancho, y=altura )
if name == "main":

Подробнее здесь: https://stackoverflow.com/questions/792 ... ent-in-dif
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»