Я пытаюсь запустить скрипт, чтобы кнопка удаляла, вставляла и потенциально получала () все нужные мне данные из текстового виджета.Стандартная процедура говорит мне просто использовать соглашение об именах, выбранное для виджета
text = Text(tk),
text.delete('1.0', END)
, но я использую класс для встраивания текста в рамку, а затем помещаю эту рамку на «вкладку» блокнота.Используя класс и следуя выбранному формату, я с трудом заставляю python регистрировать любое соглашение об именах для виджета для вызова / редактирования из другого класса, где у меня есть кнопка, чтобы выполнить сценарий.
import Tkinter as tk
from Tkinter import *
import ttk
class Text1(Frame):
def __init__(self, master, width=0, height=0, **kwargs):
self.width = width
self.height = height
Frame.__init__(self, master, width=self.width, height=self.height)
self.text_widget = Text(self, **kwargs)
self.text_widget.pack(expand=YES, fill=BOTH)
def pack(self, *args, **kwargs):
Frame.pack(self, *args, **kwargs)
self.pack_propagate(False)
self.grid(row=1, column=0)
def grid(self, *args, **kwargs):
Frame.grid(self, *args, **kwargs)
self.grid_propagate(False)
rows = 0
while rows < 50:
root.rowconfigure(rows, weight=1)
root.columnconfigure(rows, weight=1)
rows +=1
nb = ttk.Notebook(root)
nb.grid(row=1, column=0, columnspan=50, rowspan=49, sticky='NESW')
style = ttk.Style()
current_theme =style.theme_use()
style.theme_settings(current_theme, {"TNotebook.Tab": {"configure": {"padding": [20, 5]}}})
page1 = ttk.Frame(nb)
nb.add(page1, text='SS')
Text1(page1, width=470,height=400).pack()