0


Python 可视化UI输入

reference:Python GUI 编程(Tkinter) | 菜鸟教程 (runoob.com)

Python GUI编程(Tkinter)

Python 提供了多个图形开发界面的库,几个常用 Python GUI 库如下:

  • Tkinter: Tkinter 模块(Tk 接口)是 Python 的标准 Tk GUI 工具包的接口 .Tk 和 Tkinter 可以在大多数的 Unix 平台下使用,同样可以应用在 Windows 和 Macintosh 系统里。Tk8.0 的后续版本可以实现本地窗口风格,并良好地运行在绝大多数平台中。
  • wxPython:wxPython 是一款开源软件,是 Python 语言的一套优秀的 GUI 图形库,允许 Python 程序员很方便的创建完整的、功能健全的 GUI 用户界面。
  • Jython:Jython 程序可以和 Java 无缝集成。除了一些标准模块,Jython 使用 Java 的模块。Jython 几乎拥有标准的Python 中不依赖于 C 语言的全部模块。比如,Jython 的用户界面将使用 Swing,AWT或者 SWT。Jython 可以被动态或静态地编译成 Java 字节码。

创建一个GUI程序

  • 1、导入 Tkinter 模块
  • 2、创建控件
  • 3、指定这个控件的 master, 即这个控件属于哪一个
  • 4、告诉 GM(geometry manager) 有一个控件产生了。

0.定义按钮处理函数

tkinter.filedialog

--- 文件选择对话框

tkinter.filedialog

模块提供了用于创建文件/目录选择窗口的类和函数

def process_data():
    global fund_path, fund_name, month_start, month_end, choose_day
    fund_path = entry_fund_path.get()
    fund_name = entry_fund_name.get()
    month_start = entry_month_start.get()
    month_end = entry_month_end.get()
    choose_day = entry_choose_day.get()
    fundSample(fund_path, fund_name, month_start, month_end, choose_day)

def browse_file():
    filename = filedialog.askopenfilename(initialdir="/", title="选择文件")
    entry_fund_path.delete(0, tk.END)
    entry_fund_path.insert(0, filename)

以上这段代码是使用Python中的tkinter库中的filedialog模块。它的作用是创建一个对话框,让用户选择文件,然后将选择的文件名存储在变量

filename

中。

具体解释如下:

filename = filedialog.askopenfilename(initialdir="/", title="选择文件")

:这行代码打开一个文件对话框,初始目录设置为根目录

/

,对话框的标题是"选择文件"。用户选择完文件后,选择的文件路径会被存储在

filename

变量中。

entry_fund_path.delete(0, tk.END)

:这行代码是清空名为

entry_fund_path

的文本框中的内容,

tk.END

代表文本框的末尾。

entry_fund_path.insert(0, filename)

:这行代码是将

filename

中存储的文件路径插入到名为

entry_fund_path

的文本框中,插入的位置是从文本框的开头开始(0位置)。

总之,这段代码的作用是让用户选择文件,并将选择的文件路径显示在名为

entry_fund_path

的文本框中。

1.创建主窗口

root = tk.Tk()
root.title("基金数据处理")

2.创建标签和文本输入框

reference:Python Tkinter 文本框(Entry) | 菜鸟教程 (runoob.com)

Python Tkinter 标签控件(Label) | 菜鸟教程 (runoob.com)

label_fund_path = tk.Label(root, text="基金文件路径:")
label_fund_path.grid(row=0, column=0, padx=5, pady=5, sticky="w")
entry_fund_path = tk.Entry(root, width=50)
entry_fund_path.grid(row=0, column=1, padx=5, pady=5)

label_fund_name = tk.Label(root, text="基金名称:")
label_fund_name.grid(row=1, column=0, padx=5, pady=5, sticky="w")
entry_fund_name = tk.Entry(root)
entry_fund_name.grid(row=1, column=1, padx=5, pady=5)

label_month_start = tk.Label(root, text="开始月份:")
label_month_start.grid(row=2, column=0, padx=5, pady=5, sticky="w")
entry_month_start = tk.Entry(root)
entry_month_start.grid(row=2, column=1, padx=5, pady=5)

label_month_end = tk.Label(root, text="结束月份:")
label_month_end.grid(row=3, column=0, padx=5, pady=5, sticky="w")
entry_month_end = tk.Entry(root)
entry_month_end.grid(row=3, column=1, padx=5, pady=5)

label_choose_day = tk.Label(root, text="选择日期:")
label_choose_day.grid(row=4, column=0, padx=5, pady=5, sticky="w")
entry_choose_day = tk.Entry(root)
entry_choose_day.grid(row=4, column=1, padx=5, pady=5)

3.创建按钮,并绑定处理函数

reference: Python Tkinter 按钮组件 | 菜鸟教程 (runoob.com)

button_browse = tk.Button(root, text="浏览", command=browse_file)
button_browse.grid(row=0, column=2, padx=5, pady=5)

button_process = tk.Button(root, text="处理数据", command=process_data)
button_process.grid(row=5, columnspan=2, padx=5, pady=5)

4.启动主事件循环

root.mainloop()
标签: python ui 开发语言

本文转载自: https://blog.csdn.net/yangwj211/article/details/136343352
版权归原作者 yangwj211 所有, 如有侵权,请联系我们删除。

“Python 可视化UI输入”的评论:

还没有评论