Как просмотреть конец виджета записи tkinter - PullRequest
0 голосов
/ 20 июня 2019

Я использую виджет TKinter Entry для визуализации пути. Теперь строка пути на самом деле длиннее, чем виджет, и после ее вставки я вижу только начало пути. Так как я делаю это для выбора конкретного файла, было бы лучше показать конец строки пути, где находится имя файла. Есть ли способ просмотреть конец виджета Entry? Thanls

Ответы [ 2 ]

1 голос
/ 20 июня 2019

Есть два подхода:

  • первый - установить курсор к концу строки, чтобы отобразить имя файла.

  • другой - установить метку, которая получит значение записи и отобразит ее полностью.

Этот пример объединяет оба:

import tkinter as tk


def update_label(e):
    var.set(entry.get())


if __name__ == '__main__':

    root = tk.Tk()
    entry = tk.Entry(root)
    entry.pack()

    var = tk.StringVar()

    label = tk.Label(root, textvar=var)
    label.pack()

    var.set('this is a very long link with the filename at the end filename.txt')

    entry.insert(0, var.get())

    entry.bind('<Enter>', update_label)
    entry.xview(len(var.get()) - 10)

    root.mainloop()
0 голосов
/ 21 июня 2019

Большое спасибо Reblochon Masque за ваш ответ.Код, который вы добавили, фактически привел меня к еще более простому решению, а именно к использованию атрибута xview_moveto.Действительно, если я использую следующий код:

myEntry.xview_moveto(1) 

Конец записи отображается вместе с именем файла, как мне нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...