Я искал виджет ввода IP-адреса для tkinter для использования с python3.7 и наткнулся на ipentry в tklib.
https://core.tcl -lang.org / tklib / док / багажник / встроенный / WWW / tklib / файлы / модули / ipentry / ipentry.html # section2
Это не очень сложная необходимость «воссоздать колесо», и есть несколько примеров использования stackoverflow для блоков ввода IP, но мне бы очень хотелось понять, как использовать модули и виджеты в tklib с tkinter. Документация или примеры кажутся немногочисленными. Вот как далеко я продвинулась:
Прежде всего, я должен сказать Python, что этот виджет существует.
import tkinter as tk
root = tk.Tk()
root.tk.call(‘package’,’require’,’ipentry’)
Затем я создал класс для виджета.
class iPentry(tk.Widget):
def __init__(self, master):
tk.Widget.__init__(self, master, '::ipentry::ipentry’)
Затем я создаю его экземпляр и упаковываю в окно.
enterIp = iPentry(root)
enterIp.pack()
Пока все хорошо. Я получаю окно со знакомым окном ввода для адреса IPV4.

Проблема в том, что я не понял, как использовать команды виджетов get, complete или insert. Когда я пытаюсь получить от созданного мной виджета enterIp, я получаю сообщение об ошибке.
myip = enterIp.get()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'iPentry' object has no attribute 'get'
Я подозреваю, что мне не хватает некоторых синтаксических понятий. Любые предложения, как это сделать?