Day19 用python写UI-聊聊OptionMenu

OptionMenu就是下拉式选单的概念,可以有不同的设定方法,可以设成有预设选项的,也可以获得选好的内容显示在python shell上面。

♠♣今天的文章大纲♥♦

  • 建立OptionMenu
  • 预设选项
  • 获得选项内容

建立OptionMenu

import tkinter as tk

root = tk.Tk()

root.title('cuteluluWindow')
root.configure(bg="#7AFEC6")
root.iconbitmap('heart_green.ico')
root.geometry('300x300')

var =tk.StringVar(root) 

opm=tk.OptionMenu(root, var, "cellphone","computer","book")
opm.pack()

root.mainloop()

执行结果⬇⬇⬇
https://ithelp.ithome.com.tw/upload/images/20211004/20140047NuVz1gG3Vc.png
点选选项
https://ithelp.ithome.com.tw/upload/images/20211004/20140047GhRkYSrUbX.png
点选後的结果
https://ithelp.ithome.com.tw/upload/images/20211004/20140047FwZo45BITm.png


预设选项

import tkinter as tk

root = tk.Tk()

root.title('cuteluluWindow')
root.configure(bg="#7AFEC6")
root.iconbitmap('heart_green.ico')
root.geometry('300x300')

sets=("cellphone","computer","book")
var =tk.StringVar(root) 
var.set("book")

opm=tk.OptionMenu(root, var, *sets)
opm.pack()

root.mainloop()

执行结果⬇⬇⬇
一开始就会有选项了
https://ithelp.ithome.com.tw/upload/images/20211004/20140047KyuOGcCNgT.png


获得选项内容

import tkinter as tk

root = tk.Tk()

root.title('cuteluluWindow')
root.configure(bg="#7AFEC6")
root.iconbitmap('heart_green.ico')
root.geometry('300x300')

def get():
    print("You select ",var.get())

sets=("cellphone","computer","book")
var =tk.StringVar(root) 
var.set("book")

opm=tk.OptionMenu(root, var, *sets)
opm.pack()

b=tk.Button(root,text="Get",command=get)
b.pack(pady=10)

root.mainloop()

执行结果⬇⬇⬇
https://ithelp.ithome.com.tw/upload/images/20211004/20140047ST5IbwssrB.png
选好後按get,就会出现在python shell
https://ithelp.ithome.com.tw/upload/images/20211004/20140047GnvnYsQdEa.png


今天文章就到这边,明天要讲的是Combobox喔~
/images/emoticon/emoticon05.gif


<<:  18 - Rest Client - HTTP 请求工具

>>:  Leetcode: 94. Binary Tree Inorder Traversal

DAY11 - DFS应用

昨天写了DFS模板,今天就搭配模板放几题DFS的例题!! void dfs(){ if(越界或不合理...

[Day28] 组态设定 - 我与 ASP.NET Core 3 的 30天

ASP.NET Core 中的设定是使用一或多个组态提供者 (Configuration Provi...

Day 16 生命周期

我们常常在新增一个专案後会看到下面有个叫做viewDidLoad()的东西,如下图 viewDidL...

[Day21]浅谈solidity

今天要介绍的是solidity,那今天会先跟大家简单介绍solidity以及浅谈开发环境! Sol...

Day 10 - 非同步的 setState()

如果有错误,欢迎留言指教~ Q_Q State 的更新可能是非同步的!? 如果想要连续执行更新 s...