Python GUI 02----Label

在上一篇文章中已经用到了Label组件。

组件的使用步骤如下:

1.创建这个控件

2.指定这个空间的master,即这个控件属于哪一个

3.告诉GM(geometry manager)有一个控件产生了

1.text属性使用方法

import tkinter                                 

top=tkinter.Tk()
label=tkinter.Label(top,text="hello world")
label.pack()
tkinter.mainloop() 

2.label内置位图bitmap的使用方法

import tkinter                                 

top = tkinter.Tk()
label = tkinter.Label(top,bitmap = 'error')   #上面的代码使用了内置位图error
label.pack()
top.mainloop()

3.改变控件的前景色和背景色

‘fg:前景色

bg:背景色

设置背景色的一个大的用处是:可以判断控件的大小(不同的控件使用不同的颜色,后续内容可以使用此特性来调试container)

from tkinter import *
root = Tk()
#在创建Label时指定各自使用的颜色
'''可以使用的颜色值:'''
#使用颜色名称
Label(root,fg = 'red',bg = 'blue',text = 'Hello I am Tkinter').pack()
#使用颜色值#RRGGBB
Label(root,fg = 'red',bg = '#FF00FF',text = 'Hello I am Tkinter').pack()
#使用系统相关的颜色值(Windows),不建议使用这样的值,不利于平台移植
Label(root,fg = 'red',bg = 'SystemButtonShadow',text = 'Hello I am Tkinter').pack()
root.mainloop()

4.设置宽度与高度

from tkinter import *
root = Tk()
#创建三个Label,分别显示red,blue,yellow
#注意三个Label的大小,它们均与文本的长度有关
Label(root,text = 'red',bg = 'red').pack()
Label(root,text = 'blue',bg = 'blue').pack()
Label(root,text = 'yellow',bg = 'yellow').pack()

#再创建三个Label,与上次不同的是这三个Label均使用width和heigth属性
#三个Label的大小由width和height指定
Label(root,bg = 'red',width = 10,height = 3).pack()
Label(root,bg = 'blue',width = 10,height = 3).pack()
Label(root,bg = 'yellow',width = 10,height = 3).pack()
root.mainloop()

5.同时使用图像与文本

compound:    指定文本(text)与图像(bitmap/image)是如何在Label上显示,缺省为None,当指定image/bitmap时,文本(text)将被覆盖,只显示图像了。可以使用的值:

left:    图像居左

right:    图像居右

top:    图像居上

bottom:图像居下

center:文字覆盖在图像上

bitmap/image:显示在Label上的图像

text: 显示在Label上的文本

label = Label(root,text = ‘Error‘,compound = ‘left‘,bitmap = ‘error‘)

from tkinter import *
root = Tk()
#演示compound的使用方法
#图像与文本在Label中的位置
#图像居下
Label(root,text = 'botton',compound = 'bottom',bitmap = 'error').pack()
#图像居上
Label(root,text = 'top',compound = 'top',bitmap = 'error').pack()
#图像居右
Label(root,text = 'right',compound = 'right',bitmap = 'error').pack()
#图像居左
Label(root,text = 'left',compound = 'left',bitmap = 'error').pack()
#文字覆盖在图像上
Label(root,text = 'center',compound = 'center',bitmap = 'error').pack()

#消息循环
root.mainloop()

6.文本的多行显示

在Tk004中,使用width和heigth来指定控件的大小,如果指定的大小无法满足文本的要求是,会出现什么现象呢?如下代码:

Label(root,bg = ‘welcome to jcodeer.cublog.cn‘,width = 10,height = 3).pack()

运行程序,超出Label的那部分文本被截断了,常用的方法是:使用自动换行功能,及当文本长度大于控件的宽度时,文本应该换到下一行显示,Tk不会自动处理,但提供了属性:

wraplength:    指定多少单位后开始换行

justify:        指定多行的对齐方式

ahchor:        指定文本(text)或图像(bitmap/image)在Label中的显示位置

可用的值:

e

w

n

s

ne

se

sw

sn

center

布局如下图

nw        n        ne

w      center    e

sw        s        se

from tkinter import *
root = Tk()
#左对齐,文本居中
Label(root,text = 'welcome to jcodeer.cublog.cn',bg = 'yellow',width = 40,height = 3,wraplength = 80,justify = 'left').pack()
#居中对齐,文本居左
Label(root,text = 'welcome to jcodeer.cublog.cn',bg = 'red',width = 40,height = 3,wraplength = 80,anchor = 'w').pack()
#居中对齐,文本居右
Label(root,text = 'welcome to jcodeer.cublog.cn',bg = 'blue',width = 40,height = 3,wraplength = 80,anchor = 'e').pack()

root.mainloop()

如果有什么疑问欢迎到我的微信公众号提问~

时间: 2024-11-05 17:38:50

Python GUI 02----Label的相关文章

Python GUI with Tkinter (from youtube) 在youtube上能找到很多编程视频...

Python GUI with Tkinter - 1 - Introduction以上链接是一个python tkinter视频系列的第一讲的链接.虽然英语不好,但是,程序还是看得懂的(照着做就可以了),所以找不到中文视频时看下这些英语视频也是可以的. 以下是我在看视频过程中的练习, 可以在python2.7下运行. 001: hello,world: from Tkinter import Label, Tk root = Tk() thelabel = Label(root, text="

python GUI编程(Tkinter)

python GUI编程(Tkinter) python提供了多个图形开发界面的库,几个常用Python GUI库如下: Tkinter: Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的接口.Tk和Tkinter可以在大多数的Unix平台下使用,同样可以应用在Windows和Macintosh系统里.,Tk8.0的后续版本可以实现本地窗口风格,并良好地运行在绝大多数平台中. wxPython:wxPython 是一款开源软件,是 Python 语言的一套优

Python GUI programming(tkinter)

python3之前的版本用Tkinter,之后用的是tkinter 最简单的使用Tkinter的代码,首先要Tk()建立一个窗口,然后加进各种Widget from Tkinter import * window = Tk() label = Label(window, text = "Welcome to Python") button = Button(window, text = "Click me") label.pack() button.pack() w

python GUI尝鲜(但当涉猎,见往事耳)

第一步:简单的窗口和内容 import tkinter as tk window = tk.Tk() # 窗口obj对象 window.title('my TK') # 窗口名字 window.geometry('200x100') # 窗口宽度和高度 # Label对象传入相应参数text:文本内容; bg:背景; font:字体; width.height 内容的宽度.高度 l = tk.Label(window,text='OMG this is TK!',bg='green',font=

Python GUI - Tkinter tkMessageBox

Python GUI - Tkinter tkMessageBox: tkMessageBox模块用于显示在您的应用程序的消息框.此模块提供了一个功能,您可以用它来显示适当的消息 tkMessageBox模块用于显示在您的应用程序的消息框.此模块提供了一个功能,您可以用它来显示适当的消息. 这些功能有些是showinfo,showwarning,showerror,askquestion,askokcancel,askyesno,askretryignore. 方法: 这里是一个简单的语法来创建

Python GUI编程各种实现的对比

Python GUI编程各种实现的对比 从 Python 语言的诞生之日起,就有许多优秀的 GUI 工具集整合到 Python 当中,这些优秀的 GUI 工具集,使得 Python 也可以在图形界面编程领域当中大展身手,由于 Python 的流行,许多应用程序都是由 Python 结合那些优秀的 GUI 工具集编写的.下面分别介绍 Python GUI 编程的各种实现,下面的许多内容都是来自维基百科(文章后面列出了参考),这里就当做是一个没有技术色彩的整合吧. 1.Tkinter 简单介绍: 是

python 初学02 替换文件内容

用python替换文件内容的方法,搜了网上许多例子,又请教了朋友. 把完整的实现流程写一下,希望对大家有所帮助. 要求:目标文件中有一个字段为no=x x为0.1.2……,将其替换为no=0 1 import re 2 fobj = open("goal.ini", "r") 3 f = re.sub("no=\d+", "no=0", fobj.read()) 4 fobj.close() 5 fobj = open(&qu

Python IDLE(python GUI)与python(comand line)有什么区别

用了几天命令行,才知道IDLE这个东西. 打开python 2.7之后有三个命令窗口:IDLE(python GUI),python(comand line),Module Docs. Module Docs是一个搜索框,可搜索python中不了解的函数. 比较IDLE与命令行:都是交互模式 IDLE(python GUI): 白色窗口.有代码高亮.自动缩进.代码提示和菜单栏: 可以新建python文件,可复制粘贴代码.但不会返回结果: 不能用向上箭头重复上一条命令. python(comand

Python gui编程pyQt5安装步骤

Python gui编程pyQt5安装步骤 ? ? ? ? pip install PyQt5 Pip3 install PyQt5 ? ? ? ? ? ? ? https://riverbankcomputing.com/software/pyqt/download5 ? ? ? ? ? 下载地址 ? http://sourceforge.net/projects/pyqt/files/PyQt5/PyQt-5.4.1/PyQt5-5.4.1-gpl-Py3.4-Qt5.4.1-x64.exe

Python GUI 的使用方法

原博客地址 1.新建一个 .py文件,如test_hello.py: 2.右键,Edit with IDLE(即Python GUI) 3.编写代码 hello = "hello" print(hello) ##################################### test_list = [1,2,3,4,"minglang"] for i in range (1,10): test_list.append(i) print (test_list)