设计任务

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

程序详细分析

基本框架设计

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

--------功能块代码结束------

root.mainloop()

<h2 style="color:cyan;">设计标签用于提示用户</h2>

labelName = tk.Label(root, text='用户姓名:', justify=tk.RIGHT, width=80)

labelPwd = tk.Label(root, text='用户密码:', justify=tk.RIGHT, width=80)

<h2 style="color:cyan;">设计输入框</h2>

entryName = tk.Entry(root, width=80, textvariable=varName)

entryPwd = tk.Entry(root, show='*', width=80, textvariable=varPwd)

<h2 style="color:cyan;">设计按钮</h2>

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)

<h2 style="color:cyan;">设计功能函数</h2>
**关联变量**

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()

<h2 style="color:cyan;">各个组件排兵布阵</h2>

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)

<h1 style="background:cyan;">完整程序组装</h1>

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() # 窗口运行循环

<h1 style="background:cyan;">最终效果</h1>

![](https://img2018.cnblogs.com/blog/1372901/201810/1372901-20181021182129052-135871456.jpg)

![](https://img2018.cnblogs.com/blog/1372901/201810/1372901-20181021182133505-1654026029.jpg)

![](https://img2018.cnblogs.com/blog/1372901/201810/1372901-20181021182137374-229183115.jpg)

Python图形编程探索系列-07-程序登录界面设计的更多相关文章

  1. Python图形编程探索系列-05-用控制变量构建对话程序

    跳转到自己的博客 控制变量 变量 符号 意义 默认值 1 var = tk.BooleanVar() 布尔型 0 2 var = tk.StringVar() 字符串控制变量 空字符串 3 var = ...

  2. Python图形编程探索系列-09-tkinter与matplotlib结合案例

    案例1 案例来自于:https://bbs.csdn.net/topics/390326088 代码示例: import matplotlib matplotlib.use('TkAgg') from ...

  3. Python图形编程探索系列-08-再次认识标签

    标签的各种属性 代码展示: import tkinter as tk root = tk.Tk() root.geometry = '500x300' label1 = tk.Label(root, ...

  4. Python图形编程探索系列-06-按钮批量生产函数

    设计任务 初步设计一个批量生产按钮的函数,根据需要的按钮数量,自动生成多少按钮. 函数设计 import tkinter as tk # 导入tkinter库 root = tk.Tk() # 建立程 ...

  5. Python图形编程探索系列-04-网上图片与标签组件的结合

    跳转到自己的博客 任务设定 任务:从网上找到一张图片,然后将其显示在标签上? 网上图片网站:http://pic.58pic.com/58pic/17/56/38/52w58PICtER_1024.j ...

  6. Python图形编程探索系列-03-标签组件(Label)

    跳转到自己的博客 tkinter.Label介绍 什么是标签? 通俗的将就相当于word的功能,能够进行显示不可修改的文字.图片或者图文混排. 直观体会一下 图1 背景图构成:内容区(黑色),填充区( ...

  7. Python图形编程探索系列-02-框架设计

    跳转到我的博客 设计任务 在主窗口root中放置三个容器用于容纳组件,容器采用框架设计. 代码初步设计 import tkinter as tk root = tk.Tk() root.geometr ...

  8. Python图形编程探索系列-01-初级任务

    设计任务 设计一个主窗口,在其中添加三个标签和三个按钮,当点击按钮时,对标签的内容和色彩进行修改. 代码初步设计 import tkinter as tk root = tk.Tk() def f1( ...

  9. Python Socket 编程——聊天室示例程序

    上一篇 我们学习了简单的 Python TCP Socket 编程,通过分别写服务端和客户端的代码了解基本的 Python Socket 编程模型.本文再通过一个例子来加强一下对 Socket 编程的 ...

随机推荐

  1. Pytorch 资料汇总(持续更新)

    1. Pytorch 论坛/网站 PyTorch 中文网 python优先的深度学习框架 Pytorch中文文档 Pythrch-CN文档地址 PyTorch 基礎篇 2. Pytorch 书籍 深度 ...

  2. ImageNet Classification with Deep Convolutional Neural Networks(译文)转载

    ImageNet Classification with Deep Convolutional Neural Networks Alex Krizhevsky, Ilya Sutskever, Geo ...

  3. MR运动静止用户区分

    1.客户端打开菜单[MR]-[MR室内室外判定设置] 设置主小区是室外站且主小区信号比较强时RSRP门限 2.设置"上报数据用户临小区切换次数门限设置"值为15 mysql中t_m ...

  4. Graphql 相关 strapi -- Koa2

    Graphql  相关资源:     https://github.com/chentsulin/awesome-graphql graphql-apis       :     https://gi ...

  5. 深入解析内存原理:SRAM的基本原理

    1. SRAM芯片的引脚定义早期的SRAM 芯片采用了20 线双列直插(DIP:Dual Inline Package)封装技术,它们之所以具有这么多的针脚,是因为它们必须:• 每个地址信号都需要一根 ...

  6. js实现弹窗居中

    在一些页面中,我们总会遇到一些弹窗不居中的时候,还要根据浏览器的大小来调整弹窗的弹出位置, 之前我也遇到这样的问题,现在我把我知道的呈现给大家 css样式 .windowBox{ width:500p ...

  7. Hyper-V虚拟机上安装一个图形界面的Linux系统

    这件事情呢,一直想干但又觉得太陌生和麻烦,无奈现在到了非装不可的时候,只好硬着头皮去装.在此之前,我不懂什么叫做虚拟机,linux也接触甚少.经过3天的折腾,终于装好了带有图形界面的linux(字符版 ...

  8. pandas使用lambda判断元素是否为空或者None

    df2a_tp2 = df2a[df2a['combineIdentifyCode'].map(lambda x: len(str(x).strip())>0)].copy() #识别出合单的订 ...

  9. PYTHON-流程控制之if/while/for

    内容: 流程控制: 1. if 2. while 3. for ==================================流程控制之if判断 1 什么是if判断 判断一个条件如果成立则做.. ...

  10. python 全栈开发,Day99(作业讲解,DRF版本,DRF分页,DRF序列化进阶)

    昨日内容回顾 1. 为什么要做前后端分离? - 前后端交给不同的人来编写,职责划分明确. - API (IOS,安卓,PC,微信小程序...) - vue.js等框架编写前端时,会比之前写jQuery ...