Как задать идентификатор индикатора выполнения при вызове функции создания индикатора выполнения - PullRequest
0 голосов
/ 24 мая 2019

Прошу прощения за мое невежество, поскольку я новичок в Python и экспериментирую.

Я создаю панель управления, которая позволяет пользователям открывать файл. Когда пользователь открывает файл, программа добавляет строку с именем файла, индикатором выполнения и несколькими кнопками в одной строке. Создание строки выполняется путем вызова функции, которая увеличивает значение строки каждый раз при ее вызове, чтобы гарантировать, что она не заменит существующую строку, а вместо этого добавляет еще одну строку под ней, чтобы представить последний файл, открытый пользователем.

Мне нужен способ присвоения динамически генерируемым индикаторам выполнения для каждой строки уникальных идентификаторов, чтобы при запуске файла из определенной строки работал индикатор выполнения из этой конкретной строки, а не последний созданный индикатор выполнения, работающий с последней добавлена ​​строка.

Пока я просто делаю "progressStart.start ()", когда нажата кнопка выполнения, но это заставляет работать индикатор выполнения в последнем ряду вместо индикатора выполнения в строке, из которой я выполняю файл.

Любая помощь очень ценится. Надеюсь, я был достаточно ясен в своем объяснении.

    def Execute(self, rowNum):
        print("Executing...")

        print("Row: ", rowNum)
        progressStart.start() # Meant to start the progressbar on the current row number, but instead starts the progressbar on the last row added.

        # Execute file

    def createRow(self):
        incrementFunction(self)
        global progressStart
        progressStart = Progressbar(Main_frame,
                        orient="horizontal",
                        length=360,
                        mode="determinate")
        progressStart.grid(row=RowCounter, column=1, padx=3, sticky='e')

        global EXEBtn
        EXEBtn = Button(Main_frame,
                 text="Execute",
                 width=8,
                 command=lambda e=RowCounter: self.Execute(e))
        EXEBtn.grid(row=RowCounter, column=2, padx=3)

     def incrementFunction(self):
         global RowCounter 
         RowCounter = RowCounter + 1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...