Окно ввода переходных процессовPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Окно ввода переходных процессов

Сообщение Anonymous »

У меня есть система, в которой есть всплывающее окно, которое запрашивает ввод от пользователя, а затем возвращает этот ввод в основную часть кода для обработки. У меня окно появляется правильно, используя переходный процесс, чтобы гарантировать, что оно остается сверху, однако я не могу найти способ заставить окно возвращать данные в то место, из которого оно было вызвано.
Текущее:

Код: Выделить всё

from tkinter import *

class LoginWindow(object):
def __init__(self, parent):
self.parent=parent
self.data=None #Default value, to say its not been set yet
self.root=Toplevel(self.parent)
self.root.transient(self.parent)
self.username=Entry(self.root)
self.password=Entry(self.root, show="*")
self.ok=Button(self.root, text="Continue", command=self.check_pass); self.ok.grid(row=5, column=2, sticky="ew")
self.cancel=Button(self.root, text="Cancel", command=self.cancel_pass); self.cancel.grid(row=5, column=1, sticky="ew")

def check_pass(self):
self.data=(self.username.get(), self.password.get())
self.root.quit()

def cancel_pass(self):
self.data=False
self.root.quit()

parent=Tk()
pass_window=LoginWindow(parent)
#....? how do I get pass_window.data from the window, considering it will only be defined
#to be something besides None once the user has clicked the continue button
Я пробовал циклически ждать, пока значение pass_window.data изменится с None, однако это приводит к тому, что LoginWindow не отображается или скрипт зависает. В идеале я хочу сохранить там временный, поскольку он не позволяет пользователю закрывать окно, но я знаю, что переходный является причиной того, что окно не появляется (без него работает нормально)
Есть идеи?

Подробнее здесь: https://stackoverflow.com/questions/285 ... put-window
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»