Python课程-w73班
Louyj's Blog
Toggle navigation
Python课程-w73班
Home
班级课件
课堂代码
课后作业
学习资料
Archives
Tags
2022-03-20课件
2022-03-20 08:16:29
16
0
0
python-w73
#tkinter组件 ##Radiobutton单选框 单选按钮控件;显示一个单选的按钮状态 单选按钮控件仅允许用户选择单一的选项值,各个选项值之间是互斥的关系,因此只有一个选项可以被用户选择。 Radiobutton 控件通常都是成组出现的,所有控件都使用相同的变量。 语法格式如下: ``` radio=tkinter.Radiobutton(master, options...) ``` 例如: ``` var_radio = tkinter.IntVar() radio = tkinter.Radiobutton(window, text="弱", disabledforeground='red', value=1, variable=var_radio) radio.grid(row=1, column=2) radio = tkinter.Radiobutton(window, text="中", disabledforeground='red', value=2, variable=var_radio) radio.grid(row=1, column=3) radio = tkinter.Radiobutton(window, text="强", disabledforeground='red', value=3, variable=var_radio) radio.grid(row=1, column=4) ``` Radiobutton 属性列表,如下所示: - text 单选框要显示的文本, 多行使用`\n`换行 - textvariable 如果想要在程序运行时改变文本的值, 使用该选项替换text - height 高度, 指的是文本的行数 - width 宽度 - variable 存储单选框值的变量, 当单选框状态改变是,可以通过该变量获取选中单选框的值 - value 单选框的值, 在单选框组里面唯一 注意: **radiobutton成组出现时: variable参数一定要是同一个, 并且value参数不能相同** ##Combobox组合框控件 Combobox 控件,也就是下拉菜单控件(或称复合框),该控件是列表控件的改进版,具有更加灵活的界面,因此其应用场景相 比于前者要更加广泛。 不过需要注意的是 Combobox 并不包含在 tkinter 模块中,而是包含在tkinter.ttk子模块中,因此若想使用 Combobox 控件, 需要使用下面的导包方式: from tkinter import ttk 其语法格式如下所示 cbox=Combobox(master, options...) 对于 Combobox 控件而言,它常用的方法有两个,分别是 get() 和 current(),前者表示获取当前选中选项的内容,后者表示获 取选中选项的索引值。 示例: ``` combo_var = tkinter.IntVar() combobox = ttk.Combobox(window, textvariable=combo_var, values=(6, 7, 8, 9, 10, 11, 12, 13)) combobox.current(1) combobox.grid(row=1, column=1) ``` 常用属性列表,如下所示: - textvariable 存储下拉列表当前选中的值 - values 下拉列表的可选列表, 是一个tuple类型 #tkinter网格布局扩展 Grid可用于网络坐标,使用Grid来指定GUI控件的位置。 btn.grid(row=0,column=0) 支持的参数: - row 控件摆放的行数, 从0开始, 默认值为下一行 - column 控件摆放的列, 从0开始, 默认值为0 - columnspan 指定用多少列(跨列)显示该组件, 默认情况下,一个控件只占一个单元格, 通过设置columnspan来合并一行中 相邻的单元格. - rowspan 指定用多少行显示该控件 - sticky 1. 控制组件在 grid 分配的空间中的位置 2. 可以使用 “n”, “e”, “s”, “w” 以及它们的组合来定位(ewsn代表 东西南北,上北下南左西右东)3. 使用加号(+)表示拉长填充,例如 “n” + “s” 表示将组件垂直拉长填充网 格,”n” + “s” + “w” + “e” 表示填充整个网格4. 不指定该值则居中显示 - padx 指定x水平方向上的外边距 - pady 指定y垂直方向上的外边距 - ipadx 指定水平方向上的内边距 - ipady 指定垂直方向上的内边距 示例: ``` label.grid(row=0, column=0,columnspan=3,rowspan=2,padx=100,pady=100,ipadx=100,ipady=100) #设置sticky时width不起作用 btn = tkinter.Button(window, text="生成", command=fun01,width=10) btn.grid(row=0, column=2, columnspan=3, sticky=(tkinter.E, tkinter.W)) btn.grid(row=0, column=2,columnspan=3,sticky=tkinter.E+tkinter.W) #水平方向上拉伸填充, 不能写成"e+w" btn.grid(row=0, column=2,columnspan=3,sticky=tkinter.E+tkinter.W+tkinter.N+tkinter.S) #水平+垂直方向拉伸 btn.grid(row=0, column=2,columnspan=3,sticky=(tkinter.E,tkinter.W,tkinter.N,tkinter.S)) #水平+垂直方向拉伸, 元组参数 ```
Pre:
2022-03-27课件
Next:
2022-03-20课代码
0
likes
16
Weibo
Wechat
Tencent Weibo
QQ Zone
RenRen
Submit
Sign in
to leave a comment.
No Leanote account?
Sign up now.
0
comments
More...
Table of content
No Leanote account? Sign up now.