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的大部分教程. 好吧,其实也就是上一篇而已啦. 所谓布局,就是指控制窗体容器中各个控件(组件)的位置关 ...
随机推荐
- css3 实现图片等比例放大与缩小
css3 实现图片等比例放大与缩小 在工作中,经常会碰到图片缩放的情况,比如服务器端返回的图片大小,可能大小不同,有的大,有的小,服务器端返回的图片大小我们不能控制的,但是在我们设计稿的时候,可能会规 ...
- 2018-2019-2 20175105 实验一《JAVA开发环境的熟悉》实验报告
一.实验内容及步骤 (一)使用JDK编译.运行简单的Java程序 利用cd指令和mkdir指令创建文件夹 利用vim指令编辑源代码文件 利用javac指令编译,利用java指令运行 (二)使用IDEA ...
- WireShark抓包工具使用
WireShark是一款网络封包分析软件,它抓取网络封包,并尽可能显示出最详细的封包资料. wireshark的准备工作 安装wireshark sudo apt-get install wiresh ...
- 解决Skyline 6.5版本中3DML模型单体化后外部网页挂接问题
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- odoo 装饰器用法@api
摘自:blog.csdn.net/cmzhuang/article/details/52932883 @api.one one装饰符自动遍历记录集,把self重新定义成当前记录.注意,返回值是一个li ...
- Unexpected error from external database driver (1)
当尝试把Excel导入SQL时,发生此异常: Unexpected error from external database driver (1). 在网上查找到一个解决方法,网址http://dat ...
- OSC Source Code Innovation Salon(2018.10.20)
时间:2018.10.20地点:北京 朝阳 浦项中心B座2层
- 【php增删改查实例】第十四节 - 用户管理模块(起步)
从这一节开始,开始着手开发部门管理模块. 之后的内容就在此基础上进行增加. 1.用户查询 在目录中建立一个user文件夹,作为我们用户管理的模块. 打开这个文件,新建一个userManage.html ...
- System.Data.SqlClient.SqlException:“对象名 'customer' 无效。"
连接数据库出错, 错误原因:表名错误.
- .net core实践系列之短信服务-为什么选择.net core(开篇)
前言 从今天我将会写.net core实战系列,以我最近完成的短信服务作为例子.该系列将会尽量以最短的时间全部发布出来.源码也将优先开源出来给大家. 源码地址:https://github.com/S ...