练习代码,详见网站 http://zetcode.com/gui/pyqt5/firstprograms/

import sys
from PyQt5 import QtWidgets
from PyQt5 import QtGui
from PyQt5 import QtCore class TooltipExample(QtWidgets.QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()     def initUI(self):
        # 静态方法,设置Tooltip字体
        QtWidgets.QToolTip.setFont(QtGui.QFont("SansSerif", 15))
        self.setToolTip("This is a <b>QWidget</b> widget")
        # tooltip持续1000毫秒
        self.setToolTipDuration(1000)         btn = QtWidgets.QPushButton('Quit', self)
        # QCoreApplication.instance 返回当前实例
        btn.clicked.connect(QtCore.QCoreApplication.instance().quit)
        btn.resize(btn.sizeHint())
        btn.move(50, 50)
        btn.setToolTip("This is a <b>QPushButton</b> widget")
        btn.setToolTipDuration(1000)         # x,y,width,height
        #self.setGeometry(300, 300, 300, 150)
        self.resize(300,150)
        self.center()
        self.setWindowTitle("Tooltips")     def center(self):
        wr = self.frameGeometry()
        # QDesktopWidget::availableGeometry 返回屏幕rect
        qr = QtWidgets.QDesktopWidget().availableGeometry().center()
        # QRect:moveCenter 中心对齐
        wr.moveCenter(qr)
        # 实际调节窗口位置
        self.move(wr.topLeft())     def closeEvent(self, event):
        # 静态方法生成MessageBox,返回StandardButton
        reply = QtWidgets.QMessageBox.question(self, 'Message', 'Are you sure to quit ?',
                                               QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No,
                                               QtWidgets.QMessageBox.No)         if reply == QtWidgets.QMessageBox.Yes:
            event.accept()
        else:
            event.ignore() if __name__ == '__main__':
    app = QtWidgets.QApplication(sys.argv)
    example = TooltipExample()
    example.show()
    sys.exit(app.exec_())

zetcode :: First programs in PyQt5的更多相关文章

  1. ZetCode PyQt4 tutorial First programs

    #!/usr/bin/python # -*- coding: utf-8 -*- """ ZetCode PyQt4 tutorial In this example, ...

  2. Hello PyQt5

    在 ubuntu 系统上 GUI 编程,PyQt5 是个不错的选择.首先,当然是安装 PyQt5 了.终端输入命令: pip3 install PyQt5 即可. 1. 建立一目录 x01.PyQtH ...

  3. win下搭建python3+PyQt5+eric6环境

    一.安装python3 1.下载python3的安装包,默认安装即可,注意勾选 Add Python 3.6 to Path .但是这样默认安装的路径太长,不太方便找到,可选择定制安装,自己定义安装路 ...

  4. pyqt5 动画学习(四) 旋转动画,使用QGraphicsView让自己的控件旋转起来

    今天学有所成,赶紧记下今天的成果 之前三篇文章分别演示了空间的大小改变,移动,及颜色变化.在后续研究旋转的过程中即为艰难 如果你是使用pyqt4,那么使用QGraphicsItemAnimation便 ...

  5. pyqt5 QGraphicsView颜色动画问题(不兼容,运行不了动画)

    初学动画.无敌踩坑,资料真的是太少了.....本坑是一个大坑,只有解决方法,但实质原因仍不清楚 在一篇资料中了解到我们可以通过QGraphicsView来实现动画QPropertyAnimation ...

  6. pyqt5之简单窗口的创建

    在学完tkinter后,发现tkinter在布局方面特别的不方便(Tkinter资料:http://effbot.org/tkinterbook/tkinter-index.htm),因此学习pyqt ...

  7. 程序员之路:python3+PyQt5+pycharm桌面GUI开发

    http://blog.sina.com.cn/s/blog_989218ad0102wz1k.html 先看效果: 图 1 没错,学过C#的同学应该很熟悉这个界面,按钮风格和界面风格很相似,万万没想 ...

  8. pyqt5 -—-布局管理

    绝对布局 例如: 我们使用move()方法定位了每一个元素,使用x.y坐标.x.y坐标的原点是程序的左上角. lbl1 = QLabel('Zetcode', self) lbl1.move(15, ...

  9. pyqt5 -——基本功能(HelloWorld)

    一. 简单窗口 这个简单的小例子展示的是一个小窗口.但是我们可以在这个小窗口上面做很多事情,改变大小,最大化,最小化等,这需要很多代码才能实现.这在很多应用中很常见,没必要每次都要重写这部分代码,Qt ...

随机推荐

  1. Android5.1 - 通讯录建立群组

    [问题] 在没有账户的时候,不应该有添加联系人群组的选项. 我们要把这个选项干掉. [相关log]06-23 17:25:00.804: E/GroupEditorFragment(6030): No ...

  2. Linux 显示文本指定行内容

    主要采用sed.head和tail命令 如果文本中使用了 \n 这类符号,cat命令会把它当成换行符,结果会出错 $ sed -n "10p" move.sh   # 显示第10行 ...

  3. 51nod_1831: 小C的游戏(Bash博弈 找规律)

    题目链接 此类博弈不需要考虑sg函数,只需要确定必胜态和必败态,解题思路一般为打败先打表找规律,而后找规律给出统一的公式.打表方式:给定初始条件(此题中为ok[0]=ok[1]=0),然后从低到高枚举 ...

  4. python3网络编程之socketserver

    本节主要是讲解python3网络编程之socketserver,在上一节中我们讲到了socket.由于socket无法支持多用户和多并发,于是就有了socket server. socket serv ...

  5. java Socket(详解)转载

    在客户/服务器通信模式中, 客户端需要主动创建与服务器连接的 Socket(套接字), 服务器端收到了客户端的连接请求, 也会创建与客户连接的 Socket. Socket可看做是通信连接两端的收发器 ...

  6. 办公楼[POI2007]

    题目描述 FGD开办了一家电话公司.他雇用了N个职员,给了每个职员一部手机.每个职员的手机里都存储有一些同事的电话号码.由于FGD的公司规模不断扩大,旧的办公楼已经显得十分狭窄,FGD决定将公司迁至一 ...

  7. Python初学基础

      初入坑Python,打算跟着沫凡小哥的学习视频打个基础,此篇文章做一些简单的学习记录,加油加油加油啦 沫凡小哥的学习网站:https://morvanzhou.github.io/tutorial ...

  8. 20. Valid Parentheses【leetcode】

    20. Valid Parentheses Given a string containing just the characters '(', ')', '{', '}', '[' and ']', ...

  9. Misra-Gries 算法

    2017/8/13 12:51:30 一.算法解决的问题 统计频繁项:统计一个数据流中出现频率最高的 k 的元素. 例如 问:k=3,统计数据流 [1,2,1,4,2,5,6,4] 中的频繁项. 答: ...

  10. python_装饰器_语法糖

    什么是高阶函数? -- 把函数名当做参数传给另外一个函数,在另外一个函数中通过参数调用执行 #!/usr/bin/python3 __author__ = 'beimenchuixue' __blog ...