tkinterFrame框架+标签框架LabelFrame+Toplevel窗口的使用

03-01 1795阅读 0评论

1.在tkinter中,Frame是一个容器小部件用于组织和管理其他小部件。它可以作为一个独立的可见区域,也可以作为其他小部件的父容器。tkinterFrame框架+标签框架LabelFrame+Toplevel窗口的使用

tkinterFrame框架+标签框架LabelFrame+Toplevel窗口的使用,tkinterFrame框架+标签框架LabelFrame+Toplevel窗口的使用,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,使用,安装,管理,第2张
(图片来源网络,侵删)
import tkinter as tk
import tkinter.ttk as ttk
import tkinter.messagebox as mb
m = tk.Tk()
m.title("tkinter Listbox")
m.geometry('500x300')
m.resizable(0, 0)
lb = tk.Label(text='Programming Languages', font=('times', 12, 'bold'), fg='#CD7054')
lb.pack()
frame1 = tk.Frame(m)
frame1.pack()
varLb = tk.Label(frame1, text='Popular Languages', font=('times', 10, 'bold'), fg='orange')
plotLb = tk.Label(frame1, text='Your Languages', font=('times', 10, 'bold'), fg='orange')
varLb.grid(row=0, column=0, columnspan=3, padx=5)
plotLb.grid(row=0, column=6, columnspan=3, padx=5)
lbox = tk.Listbox(frame1, selectmode=tk.EXTENDED, height=8)
lbox.grid(row=1, column=0, columnspan=3, rowspan=5, sticky=tk.E, padx=10)
items = ["c", "c++", "c#", "go", "java", "javascript", "php", "python", "r", "swift"]
for i in items:
    lbox.insert('end', i)  #
list = []
langCnt = 0
def Add():
    cursel = lbox.curselection()
    curvar = lkLbox.get(0, tk.END)
    isexist = False
    if len(cursel) > 0:
        for i in cursel:
            lkLbox.insert('end', lbox.get(i))
            if lbox.get(i) in curvar:
                isexist = True
    if isexist:
        mb.showinfo('info', 'Add existing language(s)!')
def Del():
    cursel = lkLbox.curselection()
    if len(cursel) > 0:
        for i in range(len(cursel) - 1, -1, -1):
            lkLbox.delete(cursel[i])
def Clr():
    lkLbox.delete(0, tk.END)
def Set():
    global list
    global curCnt
    list.clear()
    varturp = lkLbox.get(0, tk.END)
    if len(varturp) > 0:
        for var in varturp:
            list.append(var)
    else:
        mb.showwarning('Warning', 'No language is Selected!')
    langCnt = cntCbox.current()
    print(list)
    print(langCnt)
btnAdd = tk.Button(frame1, width=6, text='>>', font=('times', 12, 'bold'), fg='green', command=Add)
btnAdd.grid(row=2, column=4, padx=10)
btnDel = tk.Button(frame1, width=6, text='Del', font=('times', 12, 'bold'), fg='red', command=Del)
btnDel.grid(row=3, column=4, padx=10)
btnClr = tk.Button(frame1, width=6, text='Clr', font=('times', 12, 'bold'), fg='red', command=Clr)
btnClr.grid(row=4, column=4, padx=10)
lkLbox = tk.Listbox(frame1, selectmode=tk.EXTENDED, height=8)
lkLbox.grid(row=1, column=6, columnspan=3, rowspan=5, sticky=tk.W, padx=10)
frame2 = tk.Frame(m)
frame2.pack(pady='10px')
curCntLb = tk.Label(frame2, text='Languages number you master:', font=('times', 10, 'bold'), fg='purple')
curCntLb.grid(row=0, column=0, columnspan=3, padx=5)
cntCbox = ttk.Combobox(frame2)
cntCbox['value'] = ('0', '1', '2', '3', '4', '5', '5+')
cntCbox.current(1)
cntCbox.grid(row=0, column=5, columnspan=3, padx=5)
btnSet = tk.Button(m, text='Apply', font=('times', 12, 'bold'), fg='blue', command=Set)
btnSet.pack(side=tk.BOTTOM, pady=5)
m.mainloop()

2.LabelFrame 控件具有框架功能以及显示标签的功能。默认情况下,它会在其子组件的周围绘制一个边框,并在其上方显示一个文本标题。使用 LabelFrame 可以方便地将多个控件组织在一起,并为它们提供一个视觉上的分组标记。

您提交的内容是:

李白

杜甫tkinterFrame框架+标签框架LabelFrame+Toplevel窗口的使用

import tkinter as tk
def get_msg():
    x = ""
    for j in cheakboxs:
        # 这里实际上是cheakboxs[j].get() == True
        # 如果被勾选的话传回来的值为True
        # 如果没有被勾选的话传回来的值为False
        if cheakboxs[j].get():
            x = x + persons[j] + "\n"
    print('您提交的内容是: ')
    print(x)
# 创建主窗口
root = tk.Tk()
# LabelFrame标签框架
labelFrame = tk.LabelFrame(root, text='选择最喜欢的诗人')
persons = {0: '李白', 1: '杜甫', 2: '李清照', 3: '苏轼', 4: '辛弃疾'}
# 这里负责给予字典的键一个False或者True的值,用于检测是否被勾选
cheakboxs = {}
for i in range(len(persons)):
    # 这里相当于是{0: False, 1: False, 2: False, 3: False, 4: False}
    cheakboxs[i] = tk.BooleanVar()
    # 只有被勾选才变为True
    tk.Checkbutton(labelFrame, text=persons[i], variable=cheakboxs[i]).grid(row=i + 1, sticky=tk.W)
labelFrame.pack(padx=10, pady=5, ipadx=5, ipady=5)
button = tk.Button(root, text="提交", width=10, command=get_msg)
button.pack()
root.mainloop()

示例2

tkinterFrame框架+标签框架LabelFrame+Toplevel窗口的使用

tkinterFrame框架+标签框架LabelFrame+Toplevel窗口的使用,tkinterFrame框架+标签框架LabelFrame+Toplevel窗口的使用,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,使用,安装,管理,第5张
(图片来源网络,侵删)
# @Author : 小红牛
# 微信公众号:WdPython
import tkinter
# 创建主窗口
root = tkinter.Tk()
textFirst = "欢迎登录"
photo = tkinter.PhotoImage(file='1.png')
Logo = tkinter.Label(root, image=photo, text=textFirst, compound=tkinter.BOTTOM)
Logo.pack()
# LabelFrame标签框架
labelFrame = tkinter.LabelFrame(root, text="登录框")
accountLabel = tkinter.Label(labelFrame, text="账号")
accountLabel.grid(row=0, column=0)
accountEntry = tkinter.Entry(labelFrame)
accountEntry.grid(row=0, column=1)
passWd = tkinter.Label(labelFrame, text="密码")
passWd.grid(row=1, column=0)
passWdEntry = tkinter.Entry(labelFrame, show="*")
passWdEntry.grid(row=1, column=1)
labelFrame.pack(padx=10, pady=5, ipadx=5, ipady=5)
root.mainloop()

3.Toplevel 是 Tkinter GUI 库中的一个控件,它代表一个独立的顶级窗口。与主窗口(通常是 Tk() 实例)不同,Toplevel 窗口是一个弹出窗口,拥有自己的标题栏、边框等部件,并且可以独立于主窗口进行操作。

tkinterFrame框架+标签框架LabelFrame+Toplevel窗口的使用

# @Author : 小红牛
# 微信公众号:WdPython
import tkinter as tk
# 创建主窗口
root = tk.Tk()
root.title("Main Window")
root.geometry('160x80')
# 创建一个按钮,点击时打开Toplevel窗口
def open_toplevel():
    top = tk.Toplevel(root)
    top.geometry('200x100')
    top.title("Toplevel Window")
    label = tk.Label(top, text="This is a toplevel window!")
    label.pack(pady=20)
# 创建按钮并添加到主窗口
button = tk.Button(root, text="Open Toplevel", command=open_toplevel)
button.pack(pady=20)
# 启动主循环
root.mainloop()

完毕!!感谢您的收看

----------★★历史博文集合★★----------

我的零基础Python教程,Python入门篇 进阶篇 视频教程 Py安装py项目 Python模块 Python爬虫 Json Xpath 正则表达式 Selenium Etree CssGui程序开发 Tkinter Pyqt5 列表元组字典数据可视化 matplotlib 词云图 Pyecharts 海龟画图 Pandas Bug处理 电脑小知识office自动化办公 编程工具

tkinterFrame框架+标签框架LabelFrame+Toplevel窗口的使用

tkinterFrame框架+标签框架LabelFrame+Toplevel窗口的使用,tkinterFrame框架+标签框架LabelFrame+Toplevel窗口的使用,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,使用,安装,管理,第8张
(图片来源网络,侵删)

免责声明
本网站所收集的部分公开资料来源于AI生成和互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。
文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

发表评论

快捷回复: 表情:
评论列表 (暂无评论,1795人围观)

还没有评论,来说两句吧...

目录[+]