内容正文:
编写说明:考虑到中职学生普遍基础知识相对薄弱的情况,我们依据支架式教学理念,精心编制了《程序设计基础-Pyhton》(高等教育出版社)一课一练。专辑里的每一份练习,都与课堂所授知识点紧密相关,题目围绕课堂所学知识点呈现。目的在于激发学生的学习兴趣,培养他们的学习自觉性,帮助学生扎实掌握课程的基本概念与基本方法,为他们后续的进一步提升奠定坚实基础。
本卷是《程序设计基础-Python》(高等教育出版社)一课一练的第七单元GUI界面设计的第4练,内容涵盖第七单元各类控件的创建相关内容。
《程序设计基础-Python》(高等教育出版社)第4练
第7单元 GUI界面设计
子任务四 各类控件的创建
1、 单项选择题(本题共3小题)
1. 下列代码中,能创建一个显示“欢迎使用”且背景色为黄色的Label控件的是( )
A. Label(root, text="欢迎使用", bg="yellow")
B. Label(root, text="欢迎使用", color="yellow")
C. Label(root, text="欢迎使用", fg="yellow")
D. A和B都正确
2. 若要创建一个密码输入框:输入内容显示为“”,应使用Entry控件的哪个属性( )
A. hide="" B. show=""
C. password="" D. mask=""
3. 关于Radiobutton控件,下列说法错误的是( )
A. 同一组Radiobutton的 variable 属性需指向同一个IntVar/StringVar对象
B. value 属性用于标识每个Radiobutton的唯一值
C. 选中Radiobutton时,会触发 command 属性绑定的函数
D. 不设置 value 属性,Radiobutton也能正常分组
二、判断题(本题共3小题)
1. Label控件不仅能显示文本,还能显示图像,且允许用户修改显示内容。( )
2. Button控件的 command 属性用于绑定单击事件的处理函数,单击按钮时会触发该函数。( )
3. Frame控件是容器控件,不能直接显示文本或图像,主要用于对其他控件进行分组管理。( )
三、简答题(本题共2小题)
1. 列举Label控件的至少5个常用属性及作用。
2. 简述Entry控件的常用方法及作用(至少答出来3个)。
四、编程题(本题共2小题)
1. 编写代码创建一个窗口,包含以下控件:① 一个Label控件,文本为“用户登录”,字体为“宋体”16号,居中显示;② 一个Label控件中文本为“用户名:”和一个宽20的Entry控件;③ 一个Label控件文本为“密码:”和一个宽20,显示为“*”的Entry控件;④ 一个Button控件,文本为“登录”,字体为“宋体”12号。所有控件用pack方式放置,且各控件之间间距为10像素。
2. 编写代码创建一个窗口,包含2个Radiobutton控件,文本分别为“男”“女”和1个Label控件,文本“请选择性别”。要求:① 两个Radiobutton为一组,默认选中“男”;② 选中Radiobutton时,Label的文本更新为“您选择的性别:男”或“您选择的性别:女”;③ 所有控件用grid布局,Label在(0,0),两个Radiobutton分别在(1,0)和(1,1)。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$
编写说明:考虑到中职学生普遍基础知识相对薄弱的情况,我们依据支架式教学理念,精心编制了《程序设计基础-Pyhton》(高等教育出版社)一课一练。专辑里的每一份练习,都与课堂所授知识点紧密相关,题目围绕课堂所学知识点呈现。目的在于激发学生的学习兴趣,培养他们的学习自觉性,帮助学生扎实掌握课程的基本概念与基本方法,为他们后续的进一步提升奠定坚实基础。
本卷是《程序设计基础-Python》(高等教育出版社)一课一练的第七单元GUI界面设计的第4练,内容涵盖第七单元各类控件的创建相关内容。
《程序设计基础-Python》(高等教育出版社)第4练
第7单元 GUI界面设计
子任务四 各类控件的创建
1、 单项选择题(本题共3小题)
1. 下列代码中,能创建一个显示“欢迎使用”且背景色为黄色的Label控件的是( )
A. Label(root, text="欢迎使用", bg="yellow")
B. Label(root, text="欢迎使用", color="yellow")
C. Label(root, text="欢迎使用", fg="yellow")
D. A和B都正确
【答案】A
【解析】Label控件的 bg 是 background 的简写,用于设置背景色; fg 用于设置前景色。
2. 若要创建一个密码输入框:输入内容显示为“”,应使用Entry控件的哪个属性( )
A. hide="" B. show=""
C. password="" D. mask=""
【答案】B
【解析】Entry控件的 show 属性用于设置输入内容的显示字符,故答案为B。
3. 关于Radiobutton控件,下列说法错误的是( )
A. 同一组Radiobutton的 variable 属性需指向同一个IntVar/StringVar对象
B. value 属性用于标识每个Radiobutton的唯一值
C. 选中Radiobutton时,会触发 command 属性绑定的函数
D. 不设置 value 属性,Radiobutton也能正常分组
【答案】D
【解析】value 属性是Radiobutton的核心属性,用于区分同一组中的不同选项,不设置 value 会导致无法判断选中的选项,故D错误。
二、判断题(本题共3小题)
1. Label控件不仅能显示文本,还能显示图像,且允许用户修改显示内容。( )
【答案】错误
【解析】Label控件的作用是“显示文本或图像,且不允许用户修改”,用户无法直接编辑Label的内容,需通过代码修改,故错误。
2. Button控件的 command 属性用于绑定单击事件的处理函数,单击按钮时会触发该函数。( )
【答案】正确
【解析】Button控件的 command 属性用于绑定函数,单击按钮时触发函数执行,故正确。
3. Frame控件是容器控件,不能直接显示文本或图像,主要用于对其他控件进行分组管理。( )
【答案】正确
【解析】Frame控件的作用是“充当其他基本控件的父控件,方便布局或美化界面”,本身不具备显示文本/图像的功能,故正确。
三、简答题(本题共2小题)
1. 列举Label控件的至少5个常用属性及作用。
【答案】①text :指定Label显示的文本内容;
②bg / background :设置Label的背景颜色;
③fg / foreground :设置Label的前景颜色;
④font :设置文本字体font=("字体", 字号, "样式");
⑤relief :指定Label的边框外观;
⑥anchor :控制文本在Label中的位置;
⑦width / height :设置Label的宽度/高度;
⑧textvariable :绑定StringVar对象,动态更新Label的文本。
2. 简述Entry控件的常用方法及作用(至少答出来3个)。
【答案】①get() :获取Entry控件中的输入内容,返回字符串;
②insert(index, text) :在指定索引位置插入文本;
③delete(first, last) :删除指定范围的文本, first=0 、 last=END 表示清空所有内容;
④config(state=状态) :设置Entry的状态, state="normal" 表示可编辑,默认、 state="readonly" 表示只读,可复制、 state="disabled" 表示完全不可操作。
四、编程题(本题共2小题)
1. 编写代码创建一个窗口,包含以下控件:① 一个Label控件,文本为“用户登录”,字体为“宋体”16号,居中显示;② 一个Label控件中文本为“用户名:”和一个宽20的Entry控件;③ 一个Label控件文本为“密码:”和一个宽20,显示为“*”的Entry控件;④ 一个Button控件,文本为“登录”,字体为“宋体”12号。所有控件用pack方式放置,且各控件之间间距为10像素。
【答案】
from tkinter import *
root = Tk()
root.title("用户登录")
root.geometry("400x300")
#标题Label
title_lb = Label(root, text="用户登录", font=("宋体", 16))
title_lb.pack(pady=10)
#用户名行
user_lb = Label(root, text="用户名:")
user_lb.pack(pady=10)
user_entry = Entry(root, width=20)
user_entry.pack(pady=10)
#密码行
pwd_lb = Label(root, text="密码:")
pwd_lb.pack(pady=10)
pwd_entry = Entry(root, width=20, show="*")
pwd_entry.pack(pady=10)
#登录按钮
login_btn = Button(root, text="登录", font=("宋体", 12))
login_btn.pack(pady=10)
root.mainloop()
2. 编写代码创建一个窗口,包含2个Radiobutton控件,文本分别为“男”“女”和1个Label控件,文本“请选择性别”。要求:① 两个Radiobutton为一组,默认选中“男”;② 选中Radiobutton时,Label的文本更新为“您选择的性别:男”或“您选择的性别:女”;③ 所有控件用grid布局,Label在(0,0),两个Radiobutton分别在(1,0)和(1,1)。
【答案】
from tkinter import *
root = Tk()
root.title("性别选择")
root.geometry("300x150")
#定义变量绑定Radiobutton
gender_var = IntVar()
#更新Label文本的函数
def update_gender():
if gender_var.get() == 1:
gender_lb["text"] = "您选择的性别:男"
else:
gender_lb["text"] = "您选择的性别:女"
Label控件
gender_lb = Label(root, text="请选择性别")
gender_lb.grid(row=0, column=0, columnspan=2, pady=10)
Radiobutton控件
male_rbtn = Radiobutton(root, text="男", variable=gender_var, value=1, command=update_gender)
male_rbtn.grid(row=1, column=0, pady=10)
female_rbtn = Radiobutton(root, text="女", variable=gender_var, value=2, command=update_gender)
female_rbtn.grid(row=1, column=1, pady=10)
#默认选中“男”
gender_var.set(1)
#初始更新Label文本
update_gender()
root.mainloop()
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$