一个简单的登录窗口布局,可以用于日常快速搭建一个简单的窗口类。

from tkinter import *
import tkinter.messagebox class LoginUi:
def __init__(self,window):
self.window = window #初始化窗口
def initWindow(self):
self.width = 200
self.height = 100
#设置窗口宽高和位子
self.window.geometry("%dx%d+%d+%d" % (self.width, self.height,
(self.window.winfo_screenwidth() - self.width)/2,
(self.window.winfo_screenheight()-self.height)/2))
#标题
self.window.title("登录窗口")
#标签
self.userNameLabel = Label(self.window, text="帐号:")
self.userNameLabel.grid(row=0, column=1, columnspan=1)
#输入框
self.userNameEntry = Entry(self.window, bd=5)
self.userNameEntry.grid(row=0, column=2, columnspan=1) self.passwordLabel = Label(self.window, text="密码:")
self.passwordLabel.grid(row=1, column=1, columnspan=1)
self.passwordEntry = Entry(self.window, bd=5)
self.passwordEntry.grid(row=1, column=2, columnspan=1)
#按钮
self.checkButton = Button(self.window, text="登录", command=self.checkCallBack)
self.checkButton.grid(row=2, column=2, columnspan=1) def checkCallBack(self):
if self.userNameEntry.get() == "" or self.passwordEntry.get() == "":
tkinter.messagebox.showinfo('提示','请输入帐号或者密码!')
if self.userNameEntry.get() == "123" and self.passwordEntry.get() == "123":
tkinter.messagebox.showinfo('提示','密码正确!')
else:
tkinter.messagebox.showinfo('提示', '密码错误!') def login():
loginWindow = Tk() #创建窗口
window = LoginUi(loginWindow) #类初始化
window.initWindow() #窗口添加组件
loginWindow.mainloop() #载入窗口循环 login()

效果如下:

最新文章

  1. 关于post请求超出最大长度
  2. 【转】ini载入保存类,操作INI配置文件方便的很
  3. winform下自绘提示框风格窗体
  4. 千份位Javascript Thousand Separator / string format
  5. [BZOJ 1085][SCOI2005]骑士精神(IDA*)
  6. SUN dataset图像数据集下载
  7. 十四、Android学习笔记_Android回调函数触发的几种方式 广播 静态对象
  8. java设计模式--行为型模式--策略模式
  9. Css 外边距折叠(collapsed margin ) 浅析
  10. CSS3实战开发: 纯CSS实现图片过滤分类显示特效
  11. 虚拟化平台cloudstack新版本的调试
  12. canvas画时钟,重拾乐趣!
  13. PHP学习笔记-3
  14. easyUI创建人员树
  15. Java环境配置小记
  16. webpack全局安装
  17. 【练习】@property练习题
  18. 杰克.多西 twitter创始人 必做清单和不必做清单
  19. InnoDB存储引擎介绍-(4)Checkpoint机制二
  20. (asp)JScript读写、复制、移动文件 asp也就那回事(4)

热门文章

  1. JAVA 基础(1)开发环境的搭建以及开发工具的选择
  2. 浅析 Linux 中的零拷贝技术
  3. 宽字符输出中文,Devc++解决方法
  4. AI趋势量化系统(Binance升级版)
  5. linux 查询文件命令
  6. 为什么我在css里使用功能类优先
  7. Arraylist集合、对象数组
  8. SAP Web Dynpro-门户集成
  9. GitLab、Jenkins结合构建持续集成(CI)环境
  10. centos服务器安全技巧