StaticText文本类

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm=1001.2014.3001.5501

创建完窗口以后,我们可以在窗口内添加一些控件,所谓的控件,就是经常使用的按钮、文本、输入框、单选框等。

于所有的UI工具来说,最基本的任务就是在屏幕上绘制纯文本。在wxPython中,可以使用wx.StaticText类来完成。使用wx.StaticText能够改变文本的对齐方式、字体和颜色等。wx.StaticText类的构造函数语法格式如下:

  wx.StaticText(parent, id, label, pos=wx.DefaultPosition,size=wx.DefaultSize,

                style=0, name="staticText")

参数说明:

l  parent:父窗口部件。

l  id:标识符。使用-1可以自动创建一个唯一的标识。

l  label:显示在静态控件中的文本内容。

l  pos:一个wx.Point或一个Python元组,它是窗口部件的位置。

l  size:一个wx.Size或一个Python元组,它是窗口部件的尺寸。

l  style:样式标记。

l  name:对象的名字。

图标 (35)

  实例01  使用wx.StaticText输出Python之禅

在Python控制台中输入 import this后,会输出如图6所示的结果,结果中的英文语句就是通常所说的Python之禅。

图6  Python之禅

下面使用StaticText类输出中文版的Python之禅。具体代码如下:

# -*- coding:utf-8 -*-

import wx

class MyFrame(wx.Frame):

    def __init__(self,parent,id):

        wx.Frame.__init__(self, parent, id, title = "创建StaticText类",

                           pos=(100, 100), size=(600, 400))

        panel = wx.Panel(self)          # 创建画板

        # 创建标题,并设置字体

        title = wx.StaticText(panel, label='Python之禅――Tim Peters',pos=(100,20))

        font  = wx.Font(16, wx.DEFAULT, wx.FONTSTYLE_NORMAL, wx.NORMAL)

        title.SetFont(font)

        # 创建文本

        wx.StaticText(panel, label='优美胜于丑陋',pos=(50,50))

        wx.StaticText(panel, label='明了胜于晦涩',pos=(50,70))

        wx.StaticText(panel, label='简洁胜于复杂',pos=(50,90))

        wx.StaticText(panel, label='复杂胜于凌乱',pos=(50,110))

        wx.StaticText(panel, label='扁平胜于嵌套',pos=(50,130))

        wx.StaticText(panel, label='间隔胜于紧凑',pos=(50,150))

        wx.StaticText(panel, label='可读性很重要',pos=(50,170))

        wx.StaticText(panel, label='即便假借特例的实用性之名,也不可违背这些规则',pos=(50,190))

        wx.StaticText(panel, label='不要包容所有错误,除非你确定需要这样做',pos=(50,210))

        wx.StaticText(panel, label='当存在多种可能,不要尝试去猜测',pos=(50,230))

        wx.StaticText(panel, label='而是尽量找一种,最好是唯一一种明显的解决方案',pos=(50,250))

        wx.StaticText(panel, label='虽然这并不容易,因为你不是 Python 之父',pos=(50,270))

        wx.StaticText(panel, label='做也许好过不做,但不假思索就动手还不如不做',pos=(50,290))

        wx.StaticText(panel, label='如果你无法向人描述你的方案,那肯定不是一个好方案;
反之亦然',pos=(50,310))

        wx.StaticText(panel, label='命名空间是一种绝妙的理念,我们应当多加利用',pos=(50,330))

if __name__ == '__main__':       

    app = wx.App()                      # 初始化应用

    frame = MyFrame(parent=None,id=-1)    # 实例MyFrame类,并传递参数  

    frame.Show()                          # 显示窗口

    app.MainLoop()                        # 调用主循环方法

上述代码中,使用panel = wx.Panel(self) 来创建画板,并将panel作为父类,然后将组件放入窗体中。此外,使用wx.Font类来设置字体。创建一个字体实例,需要使用如下的构造函数:

wx.Font(pointSize, family, style, weight, underline=False, faceName="",

        encoding=wx.FONTENCODING_DEFAULT)

参数说明:

l  pointSize:字体的整数尺寸,单位为磅。

l  family:用于快速指定一个字体而不需要知道该字体实际的名字。

l  style:指明字体是否倾斜。

l  weight:指明字体的醒目程度。

l  underline:仅在Windows系统下有效,如果取值为True,则加下划线,如果为False则无下划线。

l  faceName:指定字体名。

l  encoding:允许在几个编码中选择一个,大多数情况可以使用默认编码。

运行结果如图7所示。

图7  输出Python之禅

相关推荐

  1. Qt | QTextStream (文本流)

    2024-06-13 05:40:02       7 阅读
  2. c++ 定义文件

    2024-06-13 05:40:02       12 阅读
  3. kotlin调用文件

    2024-06-13 05:40:02       5 阅读
  4. C# 文件帮助(FileHelper)

    2024-06-13 05:40:02       33 阅读
  5. 模板分文件编写

    2024-06-13 05:40:02       15 阅读
  6. 模板分文件编写

    2024-06-13 05:40:02       16 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-13 05:40:02       14 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-13 05:40:02       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-13 05:40:02       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-13 05:40:02       18 阅读

热门阅读

  1. Springer投稿流程——Cybersecurity

    2024-06-13 05:40:02       8 阅读
  2. debian10 arm芯片安装.net6

    2024-06-13 05:40:02       6 阅读
  3. R语言桑基图

    2024-06-13 05:40:02       6 阅读
  4. 开发TEE的踩坑之配置SGX环境

    2024-06-13 05:40:02       5 阅读
  5. vxe-input 本地正常线上环境不显示问题

    2024-06-13 05:40:02       7 阅读
  6. 洛谷 P10470 前缀统计 题解 字典树

    2024-06-13 05:40:02       9 阅读
  7. IP_Endpoint类型在CAPL中的使用

    2024-06-13 05:40:02       9 阅读