【问题标题】:How to grab Tkinter inputs and put into config如何获取 Tkinter 输入并放入配置
【发布时间】:2020-08-09 00:10:13
【问题描述】:

例如,我想从 tkinter 获取输入,在 GUI 中显示 "how much do you like cars from 1 - 10?",然后受害者输入一个数字,例如 8 我如何将输入传输到我的 settings.ini?

我的代码:

root = Tk()
config = ConfigParser()
updater = ConfigUpdater()

path = os.path.dirname(os.path.abspath(__file__))
configPath = os.path.join(path, "settings.ini")

updater.read('settings.ini')
updater['Trading Settings']['maximum_value_gain'].value = "the input I want from tkinter user"
updater.update_file()


root.mainloop()

【问题讨论】:

    标签: python tkinter input config


    【解决方案1】:

    对于您的情况,您可以使用OptionMenu 进行评分输入,如下所示:

    import os
    import tkinter as tk
    from configupdater import ConfigUpdater
    
    appPath = os.path.dirname(os.path.abspath(__file__))
    configPath = os.path.join(appPath, "settings.ini")
    
    updater = ConfigUpdater()
    updater.read(configPath) # settings.ini must exists, otherwise exception
    
    root = tk.Tk()
    
    tk.Label(root, text='How much do you like cars (from 1 - 10)?').grid(row=0, column=0)
    
    rating = tk.StringVar()
    rating_opt = tk.OptionMenu(root, rating, *range(1, 11)) # dropdown with values 1 to 10
    rating_opt.config(width=5)
    rating_opt.grid(row=0, column=1)
    
    def update():
        value = rating.get()
        # update ini file only when user has selected a rating
        if value:
            updater['Trading Settings']['maximum_value_gain'].value = rating.get()
            updater.update_file()
    
    tk.Button(root, text='Update', command=update).grid(row=2, column=0, columnspan=2)
    
    root.mainloop()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多