首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Python图形编程探索系列-07-程序

Python图形编程探索系列-07-程序

作者头像
py3study
发布2020-01-19 10:00:37
发布2020-01-19 10:00:37
5980
举报
文章被收录于专栏:python3python3

设计任务

初步设计程序登录界面,详细分析设计步骤。

程序详细分析

基本框架设计

代码语言:javascript
复制
import tkinter as tk
import tkinter.messagebox
root = tk.Tk()        # 创建应用程序窗口
root.title("用户登录界面设计")
root.geometry("230x100")
# --------功能块代码开始-------

# --------功能块代码结束------
root.mainloop()

设计标签用于提示用户

代码语言:javascript
复制
labelName = tk.Label(root, text='用户姓名:', justify=tk.RIGHT, width=80)
labelPwd = tk.Label(root, text='用户密码:', justify=tk.RIGHT, width=80)

设计输入框

代码语言:javascript
复制
entryName = tk.Entry(root, width=80, textvariable=varName)
entryPwd = tk.Entry(root, show='*', width=80, textvariable=varPwd)

设计按钮

代码语言:javascript
复制
buttonOk = tk.Button(root, text='登录', relief=tk.RAISED, command=login)
buttonCancel = tk.Button(root, text='重置', relief=tk.RAISED, command=cancel)
buttonquit = tk.Button(root, text='退出', relief=tk.RAISED, command=_quit)

设计功能函数

关联变量

代码语言:javascript
复制
varName = tk.StringVar()
varName.set('')
varPwd = tk.StringVar()
varPwd.set('')

登录按钮处理函数

代码语言:javascript
复制
def login():
    # 获取用户名和密码
    name = entryName.get()
    pwd = entryPwd.get()
    if name == 'admin' and pwd == '123456':
        tk.messagebox.showinfo(title='Python tkinter', message='OK')
    else:
        tk.messagebox.showerror('Python tkinter', message='Error')

重新输入按钮处理函数

代码语言:javascript
复制
def cancel():
    # 清空用户输入的用户名和密码
    varName.set('')
    varPwd.set('')

退出按钮处理函数

代码语言:javascript
复制
def _quit():
    root.quit()
    root.destroy()

各个组件排兵布阵

代码语言:javascript
复制
labelName.place(x=10, y=5, width=80, height=20)
labelPwd.place(x=10, y=30, width=80, height=20)  
entryName.place(x=100, y=5, width=80, height=20)
entryPwd.place(x=100, y=30, width=80, height=20)
buttonOk.place(x=30, y=70, width=50, height=20)
buttonCancel.place(x=90, y=70, width=50, height=20)
buttonquit.place(x=150, y=70, width=50, height=20)

完整程序组装

代码语言:javascript
复制
import tkinter as tk
import tkinter.messagebox
root = tk.Tk() # 创建应用程序窗口
root.title("用户登录界面设计")
root.geometry("230x100")
# --------功能块代码开始-------

# 功能函数设计
varName = tk.StringVar()
varName.set('')
varPwd = tk.StringVar()
varPwd.set('')
def login():
    # 获取用户名和密码
    name = entryName.get()
    pwd = entryPwd.get()
    if name == 'admin' and pwd == '123456':
        tk.messagebox.showinfo(title='Python tkinter', message='OK')
    else:
        tk.messagebox.showerror('Python tkinter', message='Error')
def cancel():
    # 清空用户输入的用户名和密码
    varName.set('')
    varPwd.set('')
def _quit():
    root.quit()
    root.destroy()

# 主窗口中的各个组件设计
labelName = tk.Label(root, text='用户姓名:', justify=tk.RIGHT, width=80)
labelPwd = tk.Label(root, text='用户密码:', justify=tk.RIGHT, width=80)
entryName = tk.Entry(root, width=80, textvariable=varName)
entryPwd = tk.Entry(root, show='*', width=80, textvariable=varPwd)
buttonOk = tk.Button(root, text='登录', relief=tk.RAISED, command=login)
buttonCancel = tk.Button(root, text='重置', relief=tk.RAISED, command=cancel)
buttonquit = tk.Button(root, text='退出', relief=tk.RAISED, command=_quit)

# 主窗口中各个组件的排放位置 = 排兵布阵
labelName.place(x=10, y=5, width=80, height=20)
labelPwd.place(x=10, y=30, width=80, height=20)
entryName.place(x=100, y=5, width=80, height=20)
entryPwd.place(x=100, y=30, width=80, height=20)
buttonOk.place(x=30, y=70, width=50, height=20)
buttonCancel.place(x=90, y=70, width=50, height=20)
buttonquit.place(x=150, y=70, width=50, height=20)
# --------功能块代码结束------
root.mainloop() # 窗口运行循环

最终效果

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/03/19 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 设计任务
  • 程序详细分析
    • 基本框架设计
    • 设计标签用于提示用户
    • 设计输入框
    • 设计按钮
    • 设计功能函数
    • 各个组件排兵布阵
  • 完整程序组装
  • 最终效果
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档