Получить значение tkinter Spinbox внутри функции - PullRequest
0 голосов
/ 31 марта 2020

Мне нужно отобразить количество пакетов wireshark, и пользователь может выбрать конкретный пакет для просмотра информации. Для этого я использовал одну функцию SelectedFilterSearch () для отображения пакетов выбранного фильтра.

Пользователь выберет конкретный пакет из Spinbox, который будет отображаться, когда количество пакетов больше нуля с командная кнопка для отображения. Я не могу получить выбранное значение spinbox. Кто-нибудь может помочь? Ниже мой код. Я не использую класс.

def SelectedFilterSearch():
    cap = pyshark.FileCapture(pktfname.get(), display_filter= fltrname.get())

def display():
    print(selectedspin.get())

numpkts = 0

for i in cap:
    numpkts = numpkts + 1
if numpkts < 1:
    messagebox.showerror("Error", "Selected filter not available")
else:
    dispString = "There are " + str(numpkts) + " packet available. Please select a packet to display"
    selectedspin = Spinbox(top_right, from_=0, to=numpkts, width=3).grid(row=4, column=10)
    TFLDisplayLpkts = tkinter.Label(top_right, font=("Courier", 9), text=dispString, background="cyan").grid(row=3, column=10)
    TFLDisplayB = tkinter.Button(top_right, text = "Display", command = display).grid(row=5, column=10)

1 Ответ

0 голосов
/ 31 марта 2020

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

def display():
    print(my_spinbox_var.get())
my_spinbox_var=IntVar()
my_spinbox=Spinbox(top_right,from_0,to=numpkts,width=3,textvariable=my_spinbox_var)
my_spinbox.grid(row=4,column=10)

Пожалуйста, не стесняйтесь обращаться ко мне.

Роберт

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