response-admin - Фильтры стоп-листа от отправки & ldquo; onChange & rdquo;

Причина, по которой он немедленно вызывает метод, и нажатие кнопки ничего не значит, что action(somenumber) оценивается, а его возвращаемое значение присваивается как команда для кнопки. Поэтому, если action печатает что-то, чтобы сообщить вам, что он запустил и возвращает None, вы просто запустите action, чтобы оценить его возвращаемое значение, и задали None как команду для кнопки.

To есть кнопки для вызова функций с разными аргументами, вы можете использовать глобальные переменные, хотя я не могу это рекомендовать:

import Tkinter as Tk

frame = Tk.Frame(width=5, height=2, bd=1, relief=Tk.SUNKEN)
frame.grid(row=2,column=2)
frame.pack(fill=Tk.X, padx=5, pady=5)
def action():
    global output
    global variable
    output.insert(Tk.END,variable.get())
button = Tk.Button(master=frame, text='press', command=action)
button.pack()
variable = Tk.Entry(master=frame)
variable.pack()
output = Tk.Text(master=frame)
output.pack()

if __name__ == '__main__':
    Tk.mainloop()

Я бы сделал, чтобы сделать class, объекты которого будут содержать всю требуемую переменную и методы их изменения по мере необходимости:

import Tkinter as Tk
class Window:
    def __init__(self):
        self.frame = Tk.Frame(width=5, height=2, bd=1, relief=Tk.SUNKEN)
        self.frame.grid(row=2,column=2)
        self.frame.pack(fill=Tk.X, padx=5, pady=5)

        self.button = Tk.Button(master=self.frame, text='press', command=self.action)
        self.button.pack()

        self.variable = Tk.Entry(master=self.frame)
        self.variable.pack()

        self.output = Tk.Text(master=self.frame)
        self.output.pack()

    def action(self):
        self.output.insert(Tk.END,self.variable.get())

if __name__ == '__main__':
    window = Window()
    Tk.mainloop()
0
задан pedrodevoto 3 March 2019 в 21:35
поделиться

1 ответ

Компонент React-admin <Filter> не отправляет после каждого изменения поля, потому что он использует функцию устранения неполадок для отправки только после того, как пользователь прекратил печатать.

При этом, если вы не хотите, чтобы форма фильтра автоматически отправлялась, а предпочитаете форму фильтра с явной кнопкой отправки, вам придется создать собственный компонент <Filter> самостоятельно - реагировать-администратор не делает не предоставлю такой компонент.

0
ответ дан François Zaninotto 3 March 2019 в 21:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: