返回顶部
首页 > 资讯 > 后端开发 > Python >Python的GUI编程(一)Label
  • 842
分享到

Python的GUI编程(一)Label

PythonGUILabel 2023-01-31 07:01:11 842人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

常用python GUI库有: 1.Tkinter 2.WxPython 3.PyQt 4.pyGtk 5.Jython 6.MFC 7.PythonCard 8.Dabo 9.AnyGui 10.WPY 11.I

常用python GUI库有:

1.Tkinter

2.WxPython

3.PyQt

4.pyGtk

5.Jython

6.MFC

7.PythonCard

8.Dabo

9.AnyGui

10.WPY

11.IronPython

详细介绍参考:Http://blog.csdn.net/mingzznet/article/details/9172585

其中Tkinter 模块(Tk 接口)是 Python 的标准 Tk GUI 工具包的接口 .Python 使用 Tkinter 可以快速的创建 GUI 应用程序。由于 Tkinter 是内置到 python 的安装包中、只要安装好 Python 之后就能 import Tkinter 库、而且 IDLE 也是用 Tkinter 编写而成、对于简单的图形界面 Tkinter 还是能应付自如。

Python2.x中的为Tkinterpython3.x中的为tkinter

GUI编程前,先导入:import Tkinter

Tkinter组件(即类)(15种)

Tkinter的提供各种控件,如按钮,标签和文本框,一个GUI应用程序中使用。这些控件通常被称为控件或者部件。

参考:http://www.runoob.com/python/python-gui-tkinter.html

标准属性(变量):

标准属性也就是所有控件的共同属性,如大小,字体和颜色等等。

Dimension、Color、Font、Anchor、Relief、Bitmap、Cursor(光标)

详细说明参考:https://my.oschina.net/TyLucifer/blog/112961

几何管理(方法或函数):

Tkinter控件有特定的几何状态管理方法,管理整个控件区域组织,一下是Tkinter公开的几何管理类:包、网格、位置

pack()、grid()、place()

Label控件:Label 控件用以显示文字和图片. Label 通常被用来展示信息, 而非与用户交互. 

class Label(Widget):Label类继承Widget类
    """Label widget which can display text and bitmaps."""
       控件标签能够显示文本和图片
 类的初始化函数(构造函数)
    def __init__(self, master=None, cnf={}, **kw):
第一个是self,即类对象本身。
第二个是master,在Tkinter中,一个控件可能属于另一个控件,这时另一个控件就是这个控件的master。默认一个窗口没有master,因此master有None的默认值。
第三个cnf不了解
第四个是kw为命名关键字参数,
   """Construct a label widget with the parent MASTER.
	
        STANDARD OPTIONS:
标准选项(属性)
activebackground, activeforeground, anchor,
background, bitmap, borderwidth, cursor,
disabledforeground, font, foreground,
highlightbackground, highlightcolor,
highlightthickness, image, justify,
padx, pady, relief, takefocus, text,
textvariable, underline, wraplength

  WIDGET-SPECIFIC OPTIONS            height, state, width        """

调用BaseWidget中的初始化函数

        Widget.__init__(self, master, 'label', cnf, kw)


class Widget(BaseWidget, Pack, Place, Grid):Widget类继承BaseWidget, Pack, Place, Grid类
    """Internal class.

    Base class for a widget which can be positioned with the geometry managers
    Pack, Place or Grid."""
    小部件的基类,它可以定位于几何管理器。包、位置或网格。
   pass

1、背景自定义

背景,有三部分构成:内容区+填充区+边框

  <1>内容区参数有:width,length用于指定区域大小,如果显示前景内容是文本,则以单个字符大小为单位;如果显示的是图像,则以像素为单位。默认值是根据具体显示的内容动态调整。类型是int。

                  background用于指定背景的颜色,默认值根据系统而定。

  <2>填充区参数:指的是内容区和边框之间的间隔大小,单位是像素。参数有:padx , pady,类型是int。

  <3>边框参数:样式relief(可选值为:flat(默认),sunken,raised,groove,ridge),borderwidth(边框的宽度,单位是像素,默认根据系统而定,一般是1或2像素)

                             highlightbackground,highlightcolor,highlightthickness 三个边框参数仅在Label允许接收焦点的情况下(tackfocus=True),用于设置焦点获取前后高亮边框颜色以及高亮边框宽度。

2、前景自定义

  前景定义分为文本内容和图像两小块来说明。

2.1文本

  文本内容选项有:<1>指定字体和字体大小,如:font = (font_name,size),默认有系统指定。

                               <2>文本对齐方式,justify = "center(默认)left/right/"

                               <3>指定文本(或图像)颜色,foreground = "指定的颜色",可以是英文名字,也可以是RGB格式的

                               <4>指定文本内容:(静态的)text = "目标字符串.....";  (动态更新的)textvariable = str_obj,当str_obg的内容改变时,会更新Label中对应内容。

                                      这里需要注意的是str_obj必须是TKinter所支持的字符串类型变量,如:str_obj = Tkinter.StringVar()      str_obj.set("目标文本内容")

                               <5>单个字符添加下划线,underline = index, index是目标字符串中的字符索引值。

                               <6>文本或图像在背景内容区的位置:anchor  可选值为(n,s,w,e,ne,nw,sw,se,center)eswn是东南西北英文的首字母

2.2图像

图像内容选项有:<1>指定图片:bitmap = bitmap_image,当指定image选项的时候,这个参数会被忽略掉     或者  image = nORMal_image(仅支持GIF, PPM/PGM格式的图片)" 。

                                       需要注意的是这里的所用到的图片对象bitmap_image  normal_image都是需要经过TKinter转换后的图像格式。

                                       如: bitmap_image = TKinter.Bitmapimage(file = "位图片路径")

                                              normal_image = TKinter.PhotoImage(file = "gif 、ppm/pgm图片路径")

  图片和文本取舍:compound参数可以控制要显示的文本和图像。当同时指明了要显示的文本和图像时,可以通过该参数来进行不同设置。

                               可选值:None 默认值,表示只显示图像,不显示文本;bottom/top/left/right,表示图片显示在文本的下/上/左/右;center,表示文本显示在图片中心上方。

 3、Label的其他参数

  <1>activebacakground  activeforground   用于设置Label处于活动(active)状态下的背景和前景颜色,默认由系统指定。

  <2>diableforground  指定当Label不可用的状态(Disable)下的前景颜色,默认由系统指定。

  <3>cursor 指定鼠标经过Label的时候,鼠标的样式,默认由系统指定。

  <4>state  指定Label的状态,用于控制Label如何显示。可选值有:normal(默认)/active/disable。

参考:http://www.cnblogs.com/zyq-blog/p/5712926.html


属性用法:

fg(foreground):前景色
bg(background):背景色
设置背景色的一个大的用处是:可以判断控件的大小(不同的控件使用不同的颜色。

width:    宽度一个汉字约为2个单位
height:    高度    与默认的汉字高度约一致
指文本所在区域,文本默认区域居中

from Tkinter import *
root=Tk()
Lab1=Label(root,bg='red',text='床前明月光').pack()
Lab2=Label(root,bg='Green',text='疑是地上霜').pack()
Lab3=Label(root,bg='Yellow',text='举头望明月').pack()
Lab11=Label(root,bg='red',text='床前明月光',width=16,height=6).pack()
Lab22=Label(root,bg='Green',text='疑是地上霜',width=18,height=8).pack()
Lab33=Label(root,bg='Yellow',text='举头望明月',width=12,height=12).pack()
root.mainloop()

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

  left:    图像居左
    right:    图像居右
    top:    图像居上
    bottom:图像居下
    center:文字覆盖在图像上
bitmap/image:
    显示在Label上的图像
text:
    显示在Label上的文本

from Tkinter import *

#创建界面窗口
Win=Tk()
#只能显示GIF格式的图片
img=PhotoImage(file="D:/temp/1.gif")
#Label是个类,对其初始化
# #pack属性将空间加载到窗口上
#文本内容显示窗口
lab1=Label(Win,text="Hello World!",fg='red',image=img,bg='green',compound='right').pack()
lab2=Label(Win,text="Hello World!",fg='black',image=img,bg='red',compound='left').pack()
lab3=Label(Win,text="Hello World!",fg='red',image=img,bg='blue',compound='center').pack()
# 启动 Tkinter 的消息循环 (event loop)
Win.mainloop()

wraplength    指定多少单位后开始换行(经测试默认字体情况下,一个汉字或中文标点的长度大约wraplength=12单位,一个英文字符(字母,标点等)占6~9个单位,不清楚为什么没有规律)根据文本中的字符占位,设置wraplength个单位后,字符换行
justify:        指定多行的对齐方式,必须是 left, right, or center
ahchor        指定文本(text)或图像(bitmap/image)在Label中的显示位置(方位)
可用的值:
e、w、n、s、ne、se、sw、sn、center
布局如下图:类似空间平面中的8个方位

                nw(左上)        n (中上)      ne(右上)
                w  (左中)   center(中间)   e(右中)
                sw(左下)        s (中下)      se(右下)

from Tkinter import *

root=Tk()
#每行显示一句:每句5个汉字加一个中文标点符号(英文为6)warplength=5*12+12
Lab1=Label(root,bg='red',text='床前明月光,疑是地上霜,举头望明月,低头思故乡。',width=24,height=4,wraplength=72,justify='left').pack()
#height与默认的汉字高度约一致,一个汉字约为2个单位的width
Lab2=Label(root,bg='Green',text='疑是地上霜',width=18,height=5,wraplength=12,anchor='nw').pack()
Lab3=Label(root,bg='Yellow',text='举头望明月',width=18,height=2,anchor='ne',justify='right').pack()
root.mainloop()

--结束END--

本文标题: Python的GUI编程(一)Label

本文链接: https://lsjlt.com/news/192155.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python的GUI编程(一)Label
    常用Python GUI库有: 1.Tkinter 2.WxPython 3.PyQT 4.pyGtk 5.Jython 6.MFC 7.PythonCard 8.Dabo 9.AnyGui 10.WPY 11.I...
    99+
    2023-01-31
    Python GUI Label
  • python--GUI编程--Tkinter
    Tkinter: Tkinter 模块(Tk 接口)是 Python 的标准 Tk GUI 工具包的接口 .Tk 和 Tkinter 可以在大多数的 Unix 平台下使用,同样可以应用在 Windows 和 Macintosh 系统里。Tk...
    99+
    2023-01-30
    python GUI Tkinter
  • python--GUI编程--Tkinter2
    编写一个st2.py文件,代码如下#!/usr/bin/env python # coding: utf-8 __author__ = 'www.py3study.com' ...
    99+
    2023-01-30
    python GUI
  • Python-GUI编程-PyQt5
    Python-GUI编程-PyQt51. GUI编程是什么GUI 全称为: Graphical User Interface;简称GUI翻译为中文为: 图形化用户接口简单理解就是:- 使用Python开发出一个软件的界面,- 让用户可以通过...
    99+
    2023-01-30
    Python GUI
  • Python的GUI编程(二)Butto
    Button 控件是一种标准 Tkinter 控件, 用来展现不同样式的按钮. Button 控件被用以和用户交互, 比如按钮被鼠标点击后, 某种操作被启动. 和 Label 控件类似, 按钮可以展示图片或者文字. 不同的是, Lab...
    99+
    2023-01-31
    Python GUI Butto
  • Python GUI编程详解
    目录Python GUI编程0.创建窗口1.Label和Button的使用2.Entry和Text的使用3.Grid网格布局4.Frame框架5.messagebox消息框6.下拉框...
    99+
    2024-04-02
  • python编程之GUI的选择
     前言:本文来自于网络位置http://www.2cto.com/kf/201009/74917.html。尽管内容可能有些老,但是没有关系,对于想深入Python开发的工作者,在选择GUI开发包,乃至可视化IDE方面都还有相当的借鉴意义。...
    99+
    2023-01-31
    python GUI
  • Python GUI编程:让你的软件更上一层楼
    Python是一种功能强大且用途广泛的编程语言,可以用于构建各种类型的应用程序。然而,对于许多应用程序来说,仅靠命令行界面是不够的,需要提供图形用户界面(GUI)才能真正方便用户的使用。 Python提供了多种GUI库,其中最受欢迎的是...
    99+
    2024-02-14
    Python;GUI;PyQt5;Tkinter;快速开发
  • Python GUI 编程:新手指南
    ...
    99+
    2024-04-02
  • python编写的GUI表白小程序
    # Tkinter是Python的标准GUI(图形用户界面)库 ,Python使用Tkinter可以快速的创建GUI应用程序 from tkinter import * from tkinter import messagebox d...
    99+
    2023-01-31
    程序 python GUI
  • python编写一个GUI倒计时器
    本文实例为大家分享了python实现GUI倒计时器的具体代码,供大家参考,具体内容如下 代码: import tkinter as tk from time import time...
    99+
    2024-04-02
  • 揭秘Python GUI编程的神奇世界
    Python GUI编程入门 Python GUI编程是创建图形用户界面的过程。图形用户界面 (GUI) 是用户和计算机之间交互的界面。它是所有现代计算机系统的重要组成部分。Python GUI编程提供了创建具有直观用户界面的应用程序的...
    99+
    2024-02-14
    Python GUI编程 图形用户界面 Tkinter PyQt wxPython
  • Python GUI 编程的未来:展望创新
    ...
    99+
    2024-04-02
  • Python GUI 编程:面向对象的方法
    ...
    99+
    2024-04-02
  • Tkinter 101:Python GUI 编程的终极秘诀
    控件 Tkinter 提供了广泛的控件,包括按钮、标签、文本框、复选框和菜单。这些控件可以轻松地放置在窗口中并配置以满足特定的需求。 布局管理 Tkinter 使用灵活的布局管理系统,允许开发人员轻松地在窗口中安排控件。常见的布局管理器包...
    99+
    2024-04-02
  • Python GUI编程:让你的程序脱颖而出
    Python GUI编程简介 Python GUI编程,即图形用户界面编程,是使用Python语言创建应用程序界面的过程。GUI应用程序通常具有窗口、按钮、文本框、菜单等元素,用户可以通过这些元素与程序进行交互。 Python GUI编...
    99+
    2024-02-14
    Python GUI Tkinter PyQt wxPython PyGObject
  • 基于tkinter的GUI编程
    tkinter:tkinter是绑定了Python的TKGUI工具集,就是Python包装的Tcl代码,通过内嵌在Python解释器内部的Tcl解释器实现的,它是Python标准库的一部分,所以使用它进行GUI编程不需要另外安装第三方库的...
    99+
    2023-01-31
    tkinter GUI
  • python web GUI框架-NiceGUI 教程(一)
    python web GUI框架-NiceGUI 教程(一) streamlit可以在一些简单的场景下仍然推荐使用,但是streamlit实在不灵活,受限于它的核心机制,NiceGUI是一个灵活的we...
    99+
    2023-10-10
    python 前端 开发语言
  • python GUI编程实现扫雷游戏
    目录前言一、基本思路二、源代码1.运行效果2.上源码总结前言 1992年扫雷被加入到windows3.1,成为早期windows的经典游戏。近来接触python的GUI(图形化)编程...
    99+
    2024-04-02
  • 【Python】界面设计——GUI编程之【PyQt5】
    文章目录 一. PyQt5基础(一) 窗口显示(二) PyQt5程序结构分析1. 导入需要的包和模块2. 创建一个应用程序对象3. 控件的操作3.1 创建控件3.2 设置控件3.3 展示控件 ...
    99+
    2023-08-31
    python qt
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作