Я пытаюсь получить удобство с использованием пакета GUI Tkinter для python, и я хотел бы создать функцию gui, которая вернет все методы и атрибуты docstrings, используя listbox
и командная кнопка называется info
на одну унифицированную выделить ключевые слова, как показано ниже:Обращение с документацией по методу конструктора классов БЕЗ использования справки или .__ doc__
Я пытаюсь получить информацию по ключевому слову ListBox на консоли за клик по info
с использованием запроса get
метода при извлечении из curselection, но большинство из этих ключевых слов в поле являются строковыми объектами, поэтому я CANN OT ИСПОЛЬЗОВАТЬ метод .__doc__
для объекта экземпляра Tk(), как я могу получить docstring для каждого метода из списка каталогов экземпляра Tk()?
Оригинальный код:
from Tkinter import *
import threading, sys
def document():
""" Define the function's purpose """
cursor = listbox.curselection()
item = window_docs[int(cursor[0])]
print item
return
win = Tk()
Label(win, text="A list of the following packages from Tkinter:\n").pack(side="top")
scrollbar = Scrollbar(win)
types = len(dir(win)) #list of the different widgets accessible with Tkinter
button = Button(win, text="quit?", command=win.quit)
button.config(bg="#A57706", fg="#042029", relief="ridge", bd=3)
button.pack(side="top")
listbox = Listbox(win, yscrollcommand=scrollbar.set)
listbox.config(height = "400", width="30")
listbox.document = document #Bind the function to listbox constructor
window_docs = {}
for wid in range(0, types-1):
constructor = dir(win)[wid] #constructor method
listbox.insert(wid, constructor)
window_docs[wid] = constructor.__doc__
listbox.pack(side='top', fill="y")
trigger = Button(win, text="info", command=lambda listbox=listbox: listbox.document())
trigger.place(x=20, y=30, width=30, height=15)
scrollbar.config(command=listbox.yview)
scrollbar.pack(side="right", fill="y")
while True:
win.mainloop()
Еще раз кнопка информации будет генерировать документацию по ключевому слову в пределах списка, но я не уверен, как получить ключевое слово в качестве объекта правильно ПОЛУЧАТ docstring, любая помощь оценивается
Почему это помечено как C#? – stuartd
Это было авторекомендовано мне ботом стека, поэтому я включил его – akiespenc
^Я смущен вашим комментарием, что вы предлагаете? – akiespenc