python之tkinter使用-Grid(网格)布局管理器
# 使用tkinter编写登录窗口
# Grid(网格)布局管理器会将控件放置到一个二维的表格里,主控件被分割为一系列的行和列
# stricky设置对齐方式,参数N/S/W/E分别表示上、下、左、右
# columnspan:指定控件跨越多列显示
# rowspan:指定控件跨越多行显示
# padx、pady分别设置横向和纵向间隔大小 import tkinter as tk root = tk.Tk()
root.title("请登录") def reg():
'''登录校验'''
username = e_user.get()
passwd = e_pwd.get()
len_user = len(username)
len_pwd = len(passwd)
if username == 'admin' and passwd == '':
l_msg['text'] = '登录成功!'
l_msg['fg'] = 'green'
else:
l_msg.configure(text='登录失败!', fg='red')
# e_user.delete(0, len_user) # 清空输入框
e_pwd.delete(0, len_pwd) # 登录结果提示
l_msg = tk.Label(root, text='')
l_msg.grid(row=0, columnspan=2) # 跨越两列显示 # 第一行用户名输入框
l_user = tk.Label(root, text='用户名:')
l_user.grid(row=1, sticky=tk.W)
e_user = tk.Entry(root)
e_user.grid(row=1, column=1, sticky=tk.E, padx=3) # 第二行密码输入框
l_pwd = tk.Label(root, text='密码:')
l_pwd.grid(row=2, sticky=tk.E)
e_pwd = tk.Entry(root)
e_pwd['show'] = '*' # 隐藏显示
e_pwd.grid(row=2, column=1, sticky=tk.E, padx=3) # 第三行登录按钮
f_btn = tk.Frame(root)
b_login = tk.Button(f_btn, text='登录', width=6, command=reg)
b_login.grid(row=0, column=0)
b_cancel = tk.Button(f_btn, text='取消', width=6, command=root.quit)
b_cancel.grid(row=0, column=1)
f_btn.grid(row=3, columnspan=2, pady=10) root.mainloop() # 原始按钮布局
# b_login = tk.Button(root, text='登录', command=reg)
# b_login.grid(row=3, column=1, sticky=tk.W, pady=10)
# b_cancel = tk.Button(root, text='取消', command=root.quit)
# b_cancel.grid(row=3, column=1)
截图:

python之tkinter使用-Grid(网格)布局管理器的更多相关文章
- Java基础之创建窗口——使用网格布局管理器(TryGridLayout)
控制台程序. 网格布局管理器可以在容器的矩形网格中布局组件. import javax.swing.*; import java.awt.*; import javax.swing.border.Et ...
- JAVA 网格布局管理器
//网格布局管理器 import java.awt.*; import javax.swing.*; public class Jiemian3 extends JFrame{ //定义组件 JBut ...
- java网格布局管理器
public class GirdLayoutPosition extends JFrame{ public GirdLayoutPosition() { Container ...
- JAVA简单的网格布局管理器--JAVA基础
网格布局管理器: GridLayoutDemo.java: import java.awt.GridLayout;import javax.swing.JButton;import javax.swi ...
- 编写Java程序,将JButton按钮按网格布局管理器格式放置
返回本章节 返回作业目录 需求说明: 将JButton按钮按网格布局管理器格式放置 实现思路: 实现代码: public void init(){ setLayout(new GridLayout(4 ...
- Python基础=== Tkinter Grid布局管理器详解
本文转自:https://www.cnblogs.com/ruo-li-suo-yi/p/7425307.html @ 箬笠蓑衣 Grid(网格)布局管理器会将控件放置到一个二维的表 ...
- Python Tkinter Grid布局管理器详解
Grid(网格)布局管理器会将控件放置到一个二维的表格里.主控件被分割成一系列的行和列,表格中的每个单元(cell)都可以放置一个控件. 注意:不要试图在一个主窗口中混合使用pack和grid (1) ...
- Tkinter 的三大布局管理器 pack、grid 和 place用法汇总
学习python的tkinter免不了要对各个组件进行位置的排放与设定,常用的布局管理器有grid,pack和place.这三种均用于同一父组件下的组件布局,但是也是有区别的,先看下他们各自的含义吧. ...
- tkinter之grid布局管理器详解
在很久之前,我发过一篇<tkinter模块常用参数>,里面已经几乎涵盖了tkinter的大部分教程. 好吧,其实也就是上一篇而已啦. 所谓布局,就是指控制窗体容器中各个控件(组件)的位置关 ...
随机推荐
- 理解Selection对象
理解Selection对象 Selection对象的属性如下: var selection = window.getSelection(); console.log(selection); 通过上面的 ...
- 模拟斗地主和学生管理系统 IO 版
1.模拟斗地主 public class PlayCards { public static void main(String[] args) { String[] color = {"黑桃 ...
- jmeter(五)JDBC Request
jmeter中取样器(Sampler)是与服务器进行交互的单元.一个取样器通常进行三部分的工作:向服务器发送请求,记录服务器的响应数据和记录响应时间信息 有时候工作中我们需要对数据库发起请求或者对数据 ...
- 在Oracle中执行动态SQL的几种方法
转载:在Oracle中执行动态SQL的几种方法 以下为内容留存: 在Oracle中执行动态SQL的几种方法 在一般的sql操作中,sql语句基本上都是固定的,如:SELECT t.empno,t.en ...
- MVC ActionResult派生类关系图
态度决定一切,我要改变的不仅仅是技术,还有对待事情的态度! 先上个图: 由上图可知,ActionResult为根节点,其下有很多子节点!下面简单介绍下: MVC中ActionResult是Action ...
- [UWP 自定义控件]了解模板化控件(3):实现HeaderedContentControl
1. 概述 来看看这段XMAL: <StackPanel Width="300"> <TextBox Header="TextBox" /&g ...
- Zabbix监控系统部署:源码安装
1. 概述1.1 基础环境2. 部署过程2.1 创建用户组2.2 下载源码解压编译安装2.2.1 下载源码解压2.2.2 YUM安装依赖环境2.2.3 编译安装最新版curl2.2.4 更新GNU构建 ...
- 通过清华TUNA镜像源下载Android源码
建议参考官方教程:https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/ 以下为自己测试时执行的步骤: 1.下载repo $ curl https://mirr ...
- Linux内核分析第四章 读书笔记
Linux内核分析第四章 读书笔记 第一部分--进程调度 进程调度:操作系统规定下的进程选取模式 面临问题:多任务选择问题 多任务操作系统就是能同时并发地交互执行多个进程的操作系统,在单处理器机器上这 ...
- <构建之法>13-17
13章软件测试. 从基本名词到软件测试的分类方法,啃完这15页书,至少对与软件测试的理解程度不是停留在以前的层次(让用户使用,然后提出碰到什么问题) 测试不是那么简单就阐述的完全.测试按测试目的分类可 ...