Python气泡提示与标签的实现


Posted in Python onApril 01, 2020

来更新Gui教程了!!!

今天我们讲气泡提示,就是这个样子的。

Python气泡提示与标签的实现

那个‘这是一个气泡提示'就是气泡提示,朋友们肯定有些会‘哦,原来就是这个呀。',也有些朋友会说:“这不是电脑自带的吗”。这个问题在我刚学编程的时候,也是这样。比如我一开始先是学Scratch,然后目标是编一个植物大战僵尸。当我去编的时候(没学过,因为很简单,一看就懂。),以为太阳从天上掉下来的效果是编的时候不用编,而是以为自带的。结果还要涉及到什么随机数,好了,说远了…

代码上!!!

import sys
from PyQt5.QtWidgets import QWidget, QToolTip, QApplication
from PyQt5.QtGui import QFont

class Example(QWidget):
  def __init__(self):
    super().__init__()
    self.settings()

  def settings(self):
    self.setGeometry(300, 300, 400, 300)
    self.setWindowTitle('啥都行')
    self.setToolTip('气泡提示')  #气泡提示
    QToolTip.setFont(QFont('microsoft Yahei', 10)) #字体格式
    self.show()

if __name__ == '__main__':
  app = QApplication(sys.argv)
  ex = Example()
  sys.exit(app.exec_())

很明显,我们用setToolTip创建了一个气泡提示。然后这里要注意,这里是self.setToolTip,就是说在整个界面都可显示气泡,而不是在某个字上或按钮上(后面讲)然后就是字体。设置字体的两个参数分别是字体名字与大小。

刚刚提到了标签,那我们也来讲一讲,至于按钮,就有点复杂,所以下一期讲吧。

代码呢?滚出来!

import sys
from PyQt5.QtWidgets import QWidget, QLabel, QApplication
from PyQt5.QtGui import QPixmap
class Example(QWidget):
  def __init__(self):
    super().__init__()
    self.settings()

  def settings(self):
    self.setGeometry(300, 300, 300, 200)
    self.setWindowTitle('啥都行')
    self.a = QLabel(self)
    self.a.setToolTip('气泡提示')
    self.a.setText('关注一下吧!')
    self.a.move(50,50)
    print(self.a.text())
    self.show()

if __name__ == '__main__':
  app = QApplication(sys.argv)
  ex = Example()
  sys.exit(app.exec_())

大家注意了,这里的气泡提示就只能在‘关注一下吧'标签上看到了,这个标签以外的地方都无法看到这个气泡提示。可能有些朋友不知道怎么看气泡提示,就是将光标放在气泡提示的地方,等一会儿就出现了。

这个QLabel就是标签,也可以设置字体。只不过我没展示出来。self.a.text()是获取self.a的文本,如果你只是打印self.a,那么结果就是:
<PyQt5.QtWidgets.QLabel object at 0x053A4300>
这个0x053A4300是程序每次执行分配给变量或者其它的什么的一个ID,ID相当于每个人的身份证。

如果你要查看self.a的类型,那么就是这个:
<class ‘PyQt5.QtWidgets.QLabel'>

大家一定要注意,这个非常重要!!!
标签的内容只能是字符串!!!,大家应该知道我以前的博客除了QQ之外没加粗过字体。为什么我这么重视,大家看个例子:

import sys
from PyQt5.QtWidgets import QWidget, QLabel, QApplication,QPushButton
class Example(QWidget):
  def __init__(self):
    super().__init__()
    self.initUI()

  def initUI(self):
    self.setGeometry(300, 300, 300, 200)
    self.setWindowTitle('QLabel标签')
    self.a = QLabel(self)
    self.a.setText('变数字')
    self.a.move(50,50)
    self.b = QPushButton('确定',self)
    self.b.clicked.connect(self.buttonClicked)
    self.b.move(100,100)
    self.show()

  def buttonClicked(self):
    self.a.setText('123')

if __name__ == '__main__':
  app = QApplication(sys.argv)
  ex = Example()
  sys.exit(app.exec_())

这里面涉及到按钮,大家不用管,反正下一期会讲。大概的目标就是按一下按钮,标签会变成另外的内容。

如果你用的是pycharm,那么按一下按钮就会这样:

Python气泡提示与标签的实现

如果你运行成功的话,应该是0,但是这里是1。但是又不报错。

如果用的是Sublime Text3:

Python气泡提示与标签的实现

你就根本不知道有什么错。所以在这里我和大家一再强调:
标签的内容只能是字符串!!!

接着说。这个move就是将对象移动到界面的某个位置,以像素为单位。标签也可以是gif或者图片。gif的话就是用QMovie,这个大家自行搜索,因为我懒得去搜一个gif动图。所以我只和大家说图片。

import sys
from PyQt5.QtWidgets import QWidget, QLabel, QApplication
from PyQt5.QtGui import QPixmap
class Example(QWidget):
  def __init__(self):
    super().__init__()
    self.initUI()

  def initUI(self):
    self.setGeometry(300, 300, 300, 200)
    self.setWindowTitle('QLabel标签')
    self.a = QLabel(self)
    self.a.setToolTip('气泡提示')
    self.a.move(50,50)
    print(self.a.text())
    b = QLabel(self)
    b.setPixmap(QPixmap('图片名字'))
    b.move(100,100)
    self.show()

if __name__ == '__main__':
  app = QApplication(sys.argv)
  ex = Example()
  sys.exit(app.exec_())

到此这篇关于Python气泡提示与标签的实现的文章就介绍到这了,更多相关Python气泡标签内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python实现清屏的方法
Apr 30 Python
pandas数据预处理之dataframe的groupby操作方法
Apr 13 Python
Python3的介绍、安装和命令行的认识(推荐)
Oct 20 Python
python使用PIL实现多张图片垂直合并
Jan 15 Python
python协程gevent案例 爬取斗鱼图片过程解析
Aug 27 Python
python ffmpeg任意提取视频帧的方法
Feb 21 Python
Python使用configparser读取ini配置文件
May 25 Python
简单了解Python多态与属性运行原理
Jun 15 Python
利用scikitlearn画ROC曲线实例
Jul 02 Python
Django生成数据库及添加用户报错解决方案
Oct 09 Python
pandas按条件筛选数据的实现
Feb 20 Python
总结Python变量的相关知识
Jun 28 Python
django 多数据库及分库实现方式
Apr 01 #Python
详解使用python3.7配置开发钉钉群自定义机器人(2020年新版攻略)
Apr 01 #Python
Django更新models数据库结构步骤
Apr 01 #Python
pycharm工具连接mysql数据库失败问题
Apr 01 #Python
利用Python自动化操作AutoCAD的实现
Apr 01 #Python
python使用信号量动态更新配置文件的操作
Apr 01 #Python
python和pywin32实现窗口查找、遍历和点击的示例代码
Apr 01 #Python
You might like
php过滤XSS攻击的函数
2013/11/12 PHP
php实现改变图片直接打开为下载的方法
2015/04/14 PHP
浅析Yii2 GridView实现下拉搜索教程
2016/04/22 PHP
php 静态属性和静态方法区别详解
2017/04/09 PHP
PHP+ajax实现获取新闻数据简单示例
2018/05/08 PHP
修改Laravel自带的认证系统的User类的命名空间的步骤
2019/10/15 PHP
jquery调用asp.net 页面后台的实现代码
2011/04/27 Javascript
页面载入结束自动调用js函数示例
2013/09/23 Javascript
nodejs的10个性能优化技巧
2014/07/15 NodeJs
分享一个自己写的简单的javascript分页组件
2015/02/15 Javascript
JavaScript学习笔记之取数组中最大值和最小值
2016/03/23 Javascript
js表单验证实例讲解
2016/03/31 Javascript
15个值得开发人员关注的jQuery开发技巧和心得总结【经典收藏】
2016/05/25 Javascript
利用Query+bootstrap和js两种方式实现日期选择器
2017/01/10 Javascript
移动端界面的适配
2017/01/11 Javascript
JS图片压缩(pc端和移动端都适用)
2017/01/12 Javascript
微信小程序之选项卡的实现方法
2017/09/29 Javascript
AngularJs 禁止模板缓存的方法
2017/11/28 Javascript
JS中判断字符串存在和非空的方法
2018/09/12 Javascript
解决微信小程序中转换时间格式IOS不兼容的问题
2019/02/15 Javascript
在JavaScript中使用严格模式(Strict Mode)
2019/06/13 Javascript
django js 实现表格动态标序号的实例代码
2019/07/12 Javascript
vue 实现路由跳转时更改页面title
2019/11/05 Javascript
JQuery省市联动效果实现过程详解
2020/05/08 jQuery
[44:15]DOTA2上海特级锦标赛主赛事日 - 5 败者组决赛Liquid VS EG第二局
2016/03/06 DOTA
用python登录Dr.com思路以及代码分享
2014/06/25 Python
Python hashlib模块的使用示例
2020/10/09 Python
阿玛瑞酒店中文官方网站:Amari.com
2018/02/13 全球购物
P/Invoke是什么
2015/07/31 面试题
公司新员工的演讲稿注意事项
2014/01/01 职场文书
销售辞职报告范文
2014/01/12 职场文书
中学教师自我鉴定
2014/02/07 职场文书
2016幼儿园教师节新闻稿
2015/11/25 职场文书
Vue全家桶入门基础教程
2021/05/14 Vue.js
详解PHP Swoole与TCP三次握手
2021/05/27 PHP
SQL Server携程核心系统无感迁移到MySQL实战
2022/06/01 SQL Server