gpt4 book ai didi

python 3 Tkinter ComboBox 没有获得值(value)

转载 作者:行者123 更新时间:2023-12-01 09:30:15 32 4
gpt4 key购买 nike

我正在尝试使用 python 3.6 从 tkinter 中的组合框获取值,我一直在寻找很多教程,但我还没有看到问题。每次我按下按钮时都不会显示任何内容。但也没有错误。所以澄清一下......当我按下 ttk.Button 时,我试图获取 tk.combobox 的值。预先感谢您的任何想法或意见。这就是我到目前为止所拥有的。

import tkinter as tk
from tkinter import ttk


def combo_box_updater():
total_location = ['linden', 'mineola', 'brooklyn']
return total_location


def start_analisys(event=None):
site = jobsite_name.get()
print(site)


# this is part of a definition that automatically will update the names in later versions
job_site = combo_box_updater()


# basic gui setup
unified = tk.Toplevel()
unified.title('Unified 1 Week Timesheet')
unified.configure(background="#00012f")
unified.geometry("650x200")
unified.resizable(width=False, height=False)
entry_width = 30


# basic frame
frame1 = tk.Frame(unified)
frame1.grid(row=0, column=0, sticky='w')


# combo box in the fourth row
jobsite_name = tk.StringVar()
combo_box = ttk.Combobox(frame1, font="none 12 bold", width=20, textvariable=jobsite_name, text="choose location")
combo_box.grid(row=0, column=1, sticky="wesn")
combo_box['values'] = [x for x in job_site]

# Left button side
ttk.Button(frame1, text='Run', command=start_analisys, ).grid(row=0, column=2, sticky='nsew', rowspan=3)

unified.mainloop()

最佳答案

对代码进行了三处细微编辑:添加了一个标签来显示结果,向组合框设置添加了一行,并更改了主窗口的创建。

import tkinter as tk
from tkinter import ttk


def combo_box_updater():
total_location = ['linden', 'mineola', 'brooklyn']
return total_location


def start_analisys(event=None):
site = jobsite_name.get()
aLabel["text"] = site
print(site)


# this is part of a definition that automatically will update the names in later versions
job_site = combo_box_updater()


# basic gui setup
unified = tk.Tk()
unified.title('Unified 1 Week Timesheet')
unified.configure(background="#00012f")
unified.geometry("650x200")
unified.resizable(width=False, height=False)
entry_width = 30


# basic frame
frame1 = tk.Frame(unified)
frame1.grid(row=0, column=0, sticky='w')


# combo box in the fourth row
jobsite_name = tk.StringVar()
combo_box = ttk.Combobox(frame1, font="none 12 bold", width=20, textvariable=jobsite_name)
combo_box.grid(row=0, column=1, sticky="wesn")
combo_box['values'] = [x for x in job_site]
combo_box.current(0)
# Left button side
ttk.Button(frame1, text='Run', command=start_analisys, ).grid(row=0, column=2, sticky='nsew', rowspan=3)

# add a label
aLabel = ttk.Label(frame1, text='My Label')
# place the label
aLabel.grid(column=3, row=0)


unified.mainloop()
if __name__ == '__main__':
pass

关于python 3 Tkinter ComboBox 没有获得值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50033693/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com