广告合作
  • 今日头条

    今日头条

  • 百度一下

    百度一下,你就知道

  • 新浪网

    新浪网 - 提供新闻线索,重大新闻爆料

  • 搜狐

    搜狐

  • 豆瓣

    豆瓣

  • 百度贴吧

    百度贴吧——全球领先的中文社区

  • 首页 尚未审核订阅工具 订阅

    PyQt5-如何创建文本输入框(QTextEdit)

    来源:网络收集  点击:  时间:2024-07-23
    【导读】:
    文本输入框创建,同步父控件缩放,及滚动条的设置。1.顶层窗口及文本输入框。1/2分步阅读

    导入模块,创建应用程序,以及顶层窗口。

    2/2

    为窗口添加子控件,标签和文本框;

    QTextEdit 类的父类关系如下:

    QWidget---QFrame---QAbstractScrollArea---QTextEdit

    ----QTextEdit对象可以灵活的使用父类的方法及属性。例如:例中设置边框。

    ----其中 QAbstractScrollArea,是抽象类,是不可视控件,主要用于设置文本框的滚动条。

    2.设置文本框缩放同步父控件1/2

    可以重写 QWidget 的函数 resizeEvent(self, evt),监听父控件的尺寸改变,来重置子控件尺寸;从而达到同步的目的;

    首先,获取父控件的大小。

    2/2

    然后,根据父控件的大小,设置文本框的大小。

    如此,当拖拽窗口时,文本框会同步缩放。

    3.设置文本框的垂直滚动区域1/4

    抽象类 QAbstractScrollArea;用来设置滚动区域,它的子类都具有滚动区域的属性,例如 QTextEdit类 。

    为了看起来条理清晰,可以单独封装一个实例方法,来设置滚动条的相关功能属性。

    2/4

    垂直滚动条策略的设置:setVerticalScrollBarPolicy(Qt.ScrollBarPolicy)

    参数是滚动条策略对象,有三种情况 (参数可以使用对象,也可以使用数字):

    ----Qt.ScrollBarAsNeeded = 0 ;按需显示----Qt.ScrollBarAlwaysOff = 1 ;总是关闭----Qt.ScrollBarAlwaysOn = 2 ;总是显示

    在文本框创建之初,垂直滚动条默认是策略 0

    即:setVerticalScrollBarPolicy(0),当文本行数超出可视区域行数,才显示滚动条,可以托动滚动条,或用鼠标滚轮滚动内容。

    3/4

    垂直滚动策略1,总是关闭滚动条区域,虽然滚动条不可见,但仍可以使用鼠标滚轮。

    setVerticalScrollBarPolicy(1)

    4/4

    垂直滚动策略2,总是显示滚动条区域,不管什么情况总是显示滚动条区域。

    setVerticalScrollBarPolicy(2)

    4.设置文本框的水平滚动区域1/3

    水平区域的滚动条设置:setHorizontalScrollBarPolicy(Qt.ScrollBarPolicy)

    参数与垂直滚动区域策略相同。

    ----默认是策略 1,setHorizontalScrollBarPolicy(1);

    ----另外文本区域默认是软换行,即根据控件宽度换行。所以即使设置了策略0,或策略 2,都看不到滚动区域的效果。

    2/3

    要看到水平滚动区域的效果,就要改变文本框的换行模式:

    setLineWrapMode(self, QTextEdit.LineWrapMode)

    ----QTextEdit. NoWrap = 0 ,不使用软换行;----QTextEdit.WidgetWidth =1,根据控件宽度换行;(默认状态)----QTextEdit.FixedPixelWidth =2 ,固定像素宽度换行。即:将默认状态改为0,或2模式,如下:

    设置文本换行模式为 0;setLineWrapMode(0)

    此时,输入文本时,如果不按回车键强制换行,那么文本将在一行内一直向右。如果设置了滚动区域可见,那么就显示了水平的滚动条。

    3/3

    设置换行模式为2:

    ----应设置文本框软换行的的宽度: setLineWrapColumnOrWidth(int)

    ----当换行模式为QTextEdit.FixedPixelWidth =2 ,int代表像素。

    只要int大于文本框的宽度,就显示滚动条。

    PYQTPYTHON文本框文本框缩放滚动条
    本文关键词:

    版权声明:

    1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

    2、本站仅提供信息发布平台,不承担相关法律责任。

    3、若侵犯您的版权或隐私,请联系本站管理员删除。

    4、文章链接:http://www.1haoku.cn/art_994157.html

    相关资讯

    ©2019-2020 http://www.1haoku.cn/ 国ICP备20009186号05-18 10:05:57  耗时:0.885