python GUI编程(Tkinter)简单使用

在界面中很重要的是布局,一开始在查找的的时候网上有很多都是下面这样:

# -*- coding: utf-8 -*-
from Tkinter import *
 
root = Tk()
# 设置位置窗体长x宽+x坐标+y坐标
root.geometry('80x80+10+10')
 
# 填充方向
'''
Label(root, text = 'l1', bg = 'red').pack(fill = Y)
Label(root, text = 'l2', bg = 'green').pack(fill = BOTH)
Label(root, text = 'l3', bg = 'blue').pack(fill = X)
 
 
# 左右布局
Label(root, text = 'l1', bg = 'red').pack(fill = Y, side = LEFT)
Label(root, text = 'l2', bg = 'green').pack(fill = BOTH, side = RIGHT)
Label(root, text = 'l3', bg = 'blue').pack(fill = X, side = LEFT)
 
# 绝对布局
l4 = Label(root, text = 'l4')
l4.place(x = 3, y = 3, anchor = NW)
'''
 
# Grid 网格布局
l1 = Label(root, text = 'l1', bg = 'red')
l2 = Label(root, text = 'l2', bg = 'blue')
l3 = Label(root, text = 'l3', bg = 'green')
l4 = Label(root, text = 'l4', bg = 'yellow')
l5 = Label(root, text = 'l5', bg = 'purple')
 
l1.grid(row = 0, column = 0)
l2.grid(row = 1, column = 0)
l3.grid(row = 1, column = 1)
l4.grid(row = 2 )
l5.grid(row = 0, column = 3)
 
root.mainloop()

其中重要的是 pack 、 place 、grid 这三个关键字。左右布局比填充方向多了side对齐属性。绝对布局place(x轴坐标,y轴坐标)。

在写界面的时候,也避免不了使用Entry(输入框)

Eexe = Entry(top, text="选择exe文件", width=40)
Eexe.place(x=135, y=88)

和一些Entry常用功能,比如清空输入框中的内容

myEn.delete(0, END)

其实就是删除索引0到最后

还有就是输入框的插入

 myEn.insert(0, text)

其中的0是插入的索引,text是要插入的内容

获得输入框的内容

myEn.get()

在界面中通常会使用提示窗口

import tkMessageBox
tkMessageBox.showinfo("提示", "提示的内容")

要先引入在使用

经常使用的还有按钮

Btn1 = Button(top, text="浏览", width=15, command=lambda: myfile(Eexe))
Btn1.place(x=450, y=85)
其中最重要的是command属性,其中
command=lambda: myfile(Eexe)

按钮点击时调用myfile这个方法,并传入一个名叫Eexe的参数,其实就是上面的我们介绍的输入框,这里把他当参数传入。

如果我们的点击事件不需要传入参数,属性可以写成这样

command=myfile
直接等于方法名

在界面中也经常使用文本label

    varLabel = StringVar()
    # justify = 'left'
    labelMessage = Label(top, bg='White', textvariable=varLabel, relief=RAISED, width=45, height=12, wraplength=300,
                         anchor='n')
    labelMessage.place(x=110, y=210)

如果想在文本中添加内容可以使用变量
varLabel.set("想输入的内容")

同样label的内容可以取出来的
varLabel.get().encode('utf-8')

返回的是文本的内容,encode('utf-8')是文字的编码,可以在必要的时候添加

使用的python的时候我们经常还要知道当前的操作系统

currentSystem = platform.system()
if currentSystem == 'Windows':

是不是windows还是Linux

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值