vcmd = (self.register(self.validate_entry_len), '%P', '%W')
ip_entry = tk.Entry(ip_frame, width=15, validate='key', vcmd=vcmd)
port_entry = tk.Entry(port_frame, width=5, validate='key', vcmd=vcmd)
def validate_entry_len(self, P, W):
entry = self.master.nametowidget(W)
if len(P) <= !!!width of entry!!!:
return True
self.bell()
return False
Так что я пытаюсь проверить текст внутри записи, превышает ли она максимальную длину или нет. У меня есть два виджета с разной длиной. Я хочу использовать одну и ту же функцию проверки с разной длиной для каждого, так что мне не нужно делать две функции проверки, когда единственной разницей является максимальная длина. Поэтому я пытаюсь использовать ширину виджета. Однако я не могу найти способ получить ширину.Python Tkinter Entry Как получить ширину записи
By '!!! width of entry !!!' Вы имеете в виду 'len (entry.get())'? – TigerhawkT3
Это длина содержимого ширины. Я хочу, чтобы значение, которое я установил, когда я делал запись «width = 15» – whiteSkar
О, ширина самого виджета? Итак, 'entry ['width']'? – TigerhawkT3