专栏首页编程创造城市Python高级进阶教程021期 pyqt5label控件进阶使用,设置兄弟控件,广告植入

Python高级进阶教程021期 pyqt5label控件进阶使用,设置兄弟控件,广告植入

知识回顾

1.掌握综合应用登录窗体

2.掌握密码设置setEchoMode

本节知识视频教程

以下开始文字讲解:

1.本节案例:快捷定位

  • 1.把label控件上面的快捷键绑定到指定的另一个兄弟控件上
  • 2.广告链接的制作

2.知识补充

为什么是exec_()而不是exec?

由于版本关系,在pyqt5 和3.x以后的版本中都已经可以实现,效果一样。

在pyqt4及以前 和2.x版本中,没有解决exec函数名称与python中的自带的函数名称相同导致的命名空间问题。

这两个函数都返回0,类似于C语言中的return 0的效果。告诉外部环境,本程序正常执行。

3.技巧

通过窗体的resize函数调节大小,可以让窗体默认居中,而不需要手工定位。

4.兄弟控件的绑定

我们可以通过设置一个函数方法进行绑定。

首先,我们在label控件上面写上快捷键的绑定形式,使用&符号后接数字或字母,在实际运用中就代表alt键+实际的键位。

然后,新建一个单行文本框(待会要指定绑定的控件,可以是其它控件)

最后,在label控件上使用setbuddy方法进行绑定单行文本框

5.实现一个浏览器的打开链接

这里,其实我们需要借助html网页中的知识点。

首先,需要设置label控件支持html链接的功能。

然后,就可以设置label的文本为html标签的内容了。

链接在html中用a标签来代表。

实现链接到编程创造城市这个网站:

<a href=“这里是链接目标” >编程创造城市</a>

最后,必须记得设置允许打开外部链接。通过setOpenExternalLinks设置为True

6.总结强调

  • 1.掌握label控件的基本使用
  • 2.掌握label控件通过快捷键绑定兄弟控件
  • 3.掌握设置label控件为链接,植入广告。

7.本节源代码:

import sys
from PyQt5.QtWidgets import QApplication,QWidget,QLabel,QLineEdit

class MyClass(QWidget):
    def __init__(self):
        super(MyClass, self).__init__()
        self.initUI()

    def initUI(self):
        self.setWindowTitle("刘金玉编程")
        self.resize(400,300)

        lblname=QLabel(self)
        lblname.setText("姓名(&1):")
        lblname.move(50,50)

        lename=QLineEdit(self)
        lename.move(100,50)
        lblname.setBuddy(lename)

        lbldream = QLabel(self)
        lbldream.setText("愿望(&2):")
        lbldream.move(50, 100)

        ledream = QLineEdit(self)
        ledream.move(100, 100)
        lbldream.setBuddy(ledream)

        lblbc=QLabel(self)
        lblbc.setText("<a href='http://bcczcs.com' >编程创造城市</a>")
        lblbc.move(120,150)
        lblbc.setOpenExternalLinks(True)

        self.show()

if __name__=="__main__":
    app=QApplication(sys.argv)
    mc=MyClass()
    sys.exit(app.exec_())

本文分享自微信公众号 - 编程创造城市(bcczcs),作者:刘金玉编程

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-11-21

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Python高级进阶#014 pyqt5滑块控件QSlider应用

    本节开始,我们学习滑动控件,这是Python进行GUI界面开发的时候经常时候用的一种控件。

    刘金玉编程
  • Python高级进阶#015 pyqt5进度条QProgressBar结合使用qbasictimer

    这里我们在学习使用进度条的时候,必须要结合使用时钟控件,这样才能让我们看到进度条动的感觉。

    刘金玉编程
  • Python高级进阶教程022期 pyqt5 qtimer实现图片轮播

    这里的超时的意思是:超时后,要执行什么代码。在timer中体现为去执行什么槽函数。

    刘金玉编程
  • Horizon介绍—无需编写后端代码,就能构建实时应用

    时见疏星
  • python3 tkinter如何绑定事

    在上一篇《python3 实现自动生成入账记录表》说到通过编辑bat文件进行参数的输入不是很方便,本篇就是用tkinter模块制作输入信息界面,输入完成点击’o...

    py3study
  • Python获取B站视频弹幕 简单处理

    之前看到了网上有人做过一些up的B站弹幕数据可视化,感觉还挺有意思,于是自己就动手做着玩了一下(没有做可视化)。祝福武汉,祝福中国!

    啤酒单恋小龙虾
  • 物联网通信协议和标准相关的术语表

    06.26.19-Introduction-to-IoT-Standards-and-Protocols.jpg

    用户4122690
  • 理解unittest测试框架(三)——结果处理

    前文说到了测试的核心,用例的处理,这篇文章来说说unittest框架对于测试结果的处理方式。

    点点寒彬
  • PySide——Python图形化界面入门教程(四)

    PySide——Python图形化界面入门教程(四)               ——创建自己的信号槽               ——Creating Yo...

    ascii0x03
  • 【DB笔试面试623】在Oracle中,给出下面语句的可能的优化思路。

    优化思路有:①采用绑定变量;②使用静态SQL;③采用批量提交或循环外提交;④根据功能,可以去掉PL/SQL块,采用直接一次性插入的方式来完成,SQL为“INSE...

    小麦苗DBA宝典

扫码关注云+社区

领取腾讯云代金券