Программа Tkinter работала отлично, но внезапно начинала показывать следующую ошибку всякий раз, когда я ее запускал.
Программа Tkinter показывает
Traceback (последний последний вызов):
Файл "c:\Users\allen\OneDrive\Desktop\Office_App - Copy\form_main.py", строка 169, в
form = formMain()
^^^^^^^^^
Файл «c:\Users\allen\OneDrive\Desktop\Office_App — Copy\form_main.py», строка 9, в init
self.build_control()
Файл «c:\Users\allen\OneDrive\Desktop\Office_App — Copy\form_main.py», строка 100, в build_control
self.tree.heading(column = id, text = id,nchor = "e")
Файл "C:\Users\allen\AppData\Local\Programs\Python\Python311\Lib\tkinter\ttk.py", строка 1274, в заголовке
return _val_or_dict(self.tk, kw, self._w, 'заголовок', столбец)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Файл "C:\Users\allen\AppData\Local\Programs\Python\Python311\Lib\tkinter\ttk.py", строка 281, в _val_or_dict
res = tk.call(*(args + options))
^^^^^^^^^^^^^^^^^^^^^^^
_tkinter.TclError: неправильно # аргументы: должно быть ".!treeview заголовок столбца - значение параметра..."`
#The Code
def _init_(self):
self.data_manager = data_layer.DataLayer()
self.build_control()
self.refresh_tree()
self.form_main.mainloop()
def refresh_tree(self):
self.tree.delete(\*self.tree.get_children())
for record in self.data_manager.get_data():
self.tree.insert("", tk.END, values=record)
def delete_click(self):
self.delete_record()
self.refresh_tree()
def edit_click(self):
print("edit")
self.refresh_tree()
def save_click(self):
self.save_record()
self.refresh_tree()
def get_data_from_controls(self):
return [self.entry_name.get(),
self.entry_psn.get(),
self.entry_lga.get(),
self.entry_designation.get(),
self.entry_gl.get(),
self.radio_gender.get(),
self.entry_dob.get(),
self.entry_date_of_first_app.get(),
self.entry_date_of_pre_app.get(),
self.entry_qualification.get(),
self.entry_remarks.get()\]
def save_record(self):
self.data_manager.add_record(self.get_data_from_controls())
def delete_record(self):
selection = self.tree.focus()
if not selection:
messagebox.showerror(message="No Record Selected. Please Select and try again")
return
row_index = self.tree.index(selection)
self.data_manager.delete_record(row_index+1)
def theme_selected(self, event):
self.style.theme_use(self.combo_theme.get())
def update_controls(self, parent):
for child in self.walk_widgets(parent):
if isinstance(child,(tk.Frame, ttk.Treeview)):
child.grid_configure(padx=15, pady=15, sticky="w")
else:
child.grid_configure(padx=5, pady=5, sticky="w")
def walk_widgets(self, parent):
widget =[]
for child in parent.winfo_children():
widget.append(child)
widget.extend(self.walk_widgets(child))
return widget
def build_control(self):
self.form_main = tb.Window(themename="superhero")
self.style = tb.Style()
self.form_main.title("Adamawa State Bureau of Statistics Staff Manager")
#CREATE CONTROLS
frame_top_left = tk.Frame(self.form_main)
button_edit = tk.Button(frame_top_left, text="Edit", width=10, command=self.edit_click)
button_delete = tk.Button(frame_top_left, text="Delete", width=10, command=self.delete_click)
#THEMES
themes = ["cosmo","flatly","sandstone","pulse","united","journal","darkly","superhero"]
frame_top_right = tk.Frame(self.form_main)
self.combo_theme = ttk.Combobox(frame_top_right, values=themes)
self.combo_theme.set(self.style.theme.name)
self.combo_theme.bind("",self.theme_selected)
#column_ids = ["Full Name","PSN", "LGA","Designation","GL","Gender","DOB","Date of 1st App","Date of Pre App","Qualification"]
form = formMain()
Подробнее здесь: https://stackoverflow.com/questions/798 ... r-tclerror
Почему я получаю _ tkinter.tclerror:? [закрыто] ⇐ Python
Программы на Python
-
Anonymous
1768935464
Anonymous
Программа Tkinter работала отлично, но внезапно начинала показывать следующую ошибку всякий раз, когда я ее запускал.
Программа Tkinter показывает
Traceback (последний последний вызов):
Файл "c:\Users\allen\OneDrive\Desktop\Office_App - Copy\form_main.py", строка 169, в
form = formMain()
^^^^^^^^^
Файл «c:\Users\allen\OneDrive\Desktop\Office_App — Copy\form_main.py», строка 9, в [b]init[/b]
self.build_control()
Файл «c:\Users\allen\OneDrive\Desktop\Office_App — Copy\form_main.py», строка 100, в build_control
self.tree.heading(column = id, text = id,nchor = "e")
Файл "C:\Users\allen\AppData\Local\Programs\Python\Python311\Lib\tkinter\ttk.py", строка 1274, в заголовке
return _val_or_dict(self.tk, kw, self._w, 'заголовок', столбец)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Файл "C:\Users\allen\AppData\Local\Programs\Python\Python311\Lib\tkinter\ttk.py", строка 281, в _val_or_dict
res = tk.call(*(args + options))
^^^^^^^^^^^^^^^^^^^^^^^
_tkinter.TclError: неправильно # аргументы: должно быть ".!treeview заголовок столбца - значение параметра..."`
#The Code
def _init_(self):
self.data_manager = data_layer.DataLayer()
self.build_control()
self.refresh_tree()
self.form_main.mainloop()
def refresh_tree(self):
self.tree.delete(\*self.tree.get_children())
for record in self.data_manager.get_data():
self.tree.insert("", tk.END, values=record)
def delete_click(self):
self.delete_record()
self.refresh_tree()
def edit_click(self):
print("edit")
self.refresh_tree()
def save_click(self):
self.save_record()
self.refresh_tree()
def get_data_from_controls(self):
return [self.entry_name.get(),
self.entry_psn.get(),
self.entry_lga.get(),
self.entry_designation.get(),
self.entry_gl.get(),
self.radio_gender.get(),
self.entry_dob.get(),
self.entry_date_of_first_app.get(),
self.entry_date_of_pre_app.get(),
self.entry_qualification.get(),
self.entry_remarks.get()\]
def save_record(self):
self.data_manager.add_record(self.get_data_from_controls())
def delete_record(self):
selection = self.tree.focus()
if not selection:
messagebox.showerror(message="No Record Selected. Please Select and try again")
return
row_index = self.tree.index(selection)
self.data_manager.delete_record(row_index+1)
def theme_selected(self, event):
self.style.theme_use(self.combo_theme.get())
def update_controls(self, parent):
for child in self.walk_widgets(parent):
if isinstance(child,(tk.Frame, ttk.Treeview)):
child.grid_configure(padx=15, pady=15, sticky="w")
else:
child.grid_configure(padx=5, pady=5, sticky="w")
def walk_widgets(self, parent):
widget =[]
for child in parent.winfo_children():
widget.append(child)
widget.extend(self.walk_widgets(child))
return widget
def build_control(self):
self.form_main = tb.Window(themename="superhero")
self.style = tb.Style()
self.form_main.title("Adamawa State Bureau of Statistics Staff Manager")
#CREATE CONTROLS
frame_top_left = tk.Frame(self.form_main)
button_edit = tk.Button(frame_top_left, text="Edit", width=10, command=self.edit_click)
button_delete = tk.Button(frame_top_left, text="Delete", width=10, command=self.delete_click)
#THEMES
themes = ["cosmo","flatly","sandstone","pulse","united","journal","darkly","superhero"]
frame_top_right = tk.Frame(self.form_main)
self.combo_theme = ttk.Combobox(frame_top_right, values=themes)
self.combo_theme.set(self.style.theme.name)
self.combo_theme.bind("",self.theme_selected)
#column_ids = ["Full Name","PSN", "LGA","Designation","GL","Gender","DOB","Date of 1st App","Date of Pre App","Qualification"]
form = formMain()
Подробнее здесь: [url]https://stackoverflow.com/questions/79872116/why-am-i-getting-tkinter-tclerror[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия