Python PyQt4实现QQ抽屉效果


Posted in Python onApril 20, 2018

本文实例为大家分享了Python PyQt4实现QQ抽屉效果展示的具体代码,供大家参考,具体内容如下

先看截图效果:

Python PyQt4实现QQ抽屉效果

主要是使用了QT的QTabWidget、QToolBox多页窗口部件

# -*- coding: utf-8 -*- 
from PyQt4.QtGui import * 
from PyQt4.QtCore import * 
import sys 
 
QTextCodec.setCodecForTr(QTextCodec.codecForName("utf8")) 
 
class MyQQ(QTabWidget): 
  def __init__(self,parent=None): 
    super(MyQQ,self).__init__(parent) 
     
    toolButton1=QToolButton() 
    toolButton1.setText(self.tr("gavin")) 
    toolButton1.setIcon(QIcon("d:/image/1.png")) 
    toolButton1.setIconSize(QSize(60,60)) 
    toolButton1.setAutoRaise(True) 
    toolButton1.setToolButtonStyle(Qt.ToolButtonTextBesideIcon) 
 
 
    toolButton2=QToolButton() 
    toolButton2.setText(self.tr("问题的方法")) 
    toolButton2.setIcon(QIcon("d:/image/2.png")) 
    toolButton2.setIconSize(QSize(60,60)) 
    toolButton2.setAutoRaise(True) 
    toolButton2.setToolButtonStyle(Qt.ToolButtonTextBesideIcon)     
 
    toolButton3=QToolButton() 
    toolButton3.setText(self.tr("为什么")) 
    toolButton3.setIcon(QIcon("d:/image/3.png")) 
    toolButton3.setIconSize(QSize(60,60)) 
    toolButton3.setAutoRaise(True) 
    toolButton3.setToolButtonStyle(Qt.ToolButtonTextBesideIcon) 
 
    groupbox1=QGroupBox() 
    vlayout1=QVBoxLayout(groupbox1) 
    vlayout1.setMargin(10) 
    vlayout1.setAlignment(Qt.AlignCenter) 
    vlayout1.addWidget(toolButton1) 
    vlayout1.addWidget(toolButton2) 
    vlayout1.addStretch() 
 
    groupbox2=QGroupBox() 
    vlayout2=QVBoxLayout(groupbox2) 
    vlayout2.setMargin(10) 
    vlayout2.setAlignment(Qt.AlignCenter) 
    vlayout2.addWidget(toolButton3) 
    vlayout2.addStretch() 
 
    groupbox3=QGroupBox() 
 
    toolbox1 = QToolBox() 
    toolbox1.addItem(groupbox1,self.tr("我的好友")) 
    toolbox1.addItem(groupbox2,self.tr("同事")) 
    toolbox1.addItem(groupbox3,self.tr("黑名单")) 
         
    toolbox2 = QToolBox() 
     
    self.addTab(toolbox1, "联系人") 
    self.addTab(toolbox2, "群/讨论组") 
     
app=QApplication(sys.argv) 
myqq=MyQQ() 
myqq.setWindowTitle("QQ2012") 
myqq.show() 
app.exec_()

问题记录

1.脚本中使用中文处,提示错误:

SyntaxError:<unicode error> 'utf8' codec can't decode byte 0xc4 in position 0: invalid continuation byte

需要将*.py文件保存成utf-8, 我用的是gvim,一直没搞明白vim的编码设置,所以我用了种比较笨的方法,用记事本打开,另存为utf-8格式

2.一开始,我把头像目录image放在\Python32\Lib\site-packages目录下,然后在解释中调用模块,但是不能显示,后来就改用了绝对路径

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中对列表排序实例
Jan 04 Python
Python中使用copy模块实现列表(list)拷贝
Apr 14 Python
详解python while 函数及while和for的区别
Sep 07 Python
python pandas生成时间列表
Jun 29 Python
django基于cors解决跨域请求问题详解
Aug 06 Python
python虚拟环境的安装和配置(virtualenv,virtualenvwrapper)
Aug 09 Python
Python socket 套接字实现通信详解
Aug 27 Python
python实现飞机大战小游戏
Nov 08 Python
实现Python与STM32通信方式
Dec 18 Python
python标准库os库的函数介绍
Feb 12 Python
简单了解pytest测试框架setup和tearDown
Apr 14 Python
keras实现VGG16 CIFAR10数据集方式
Jul 07 Python
Python在groupby分组后提取指定位置记录方法
Apr 20 #Python
PyQt实现界面翻转切换效果
Apr 20 #Python
python3+PyQt5+Qt Designer实现堆叠窗口部件
Apr 20 #Python
python3 pandas 读取MySQL数据和插入的实例
Apr 20 #Python
PyQt5每天必学之事件与信号
Apr 20 #Python
pandas groupby 分组取每组的前几行记录方法
Apr 20 #Python
基于pandas数据样本行列选取的方法
Apr 20 #Python
You might like
php正则表达式学习笔记
2015/11/13 PHP
PHP不使用内置函数实现字符串转整型的方法示例
2017/07/03 PHP
jQuery学习4 浏览器的事件模型
2010/02/07 Javascript
jquery 快速回到页首的方法
2013/12/05 Javascript
Jquery修改页面标题title其它JS失效的解决方法
2014/10/31 Javascript
javascript实现客户端兼容各浏览器创建csv并下载的方法
2015/03/23 Javascript
JavaScript获得表单target属性的方法
2015/04/02 Javascript
javascript常用的方法分享
2015/07/01 Javascript
JavaScript中利用Array和Object实现Map的方法
2015/07/27 Javascript
JS实现的验证身份证及获取地区功能示例
2017/01/16 Javascript
深入理解AngularJS中的ng-bind-html指令
2017/03/27 Javascript
JS运动特效之链式运动分析
2018/01/24 Javascript
vue2.0结合Element-ui实战案例
2019/03/06 Javascript
详解vue 不同环境配置不同的打包命令
2019/04/07 Javascript
JS 封装父页面子页面交互接口的实例代码
2019/06/25 Javascript
[53:18]Spirit vs Liquid Supermajor小组赛A组 BO3 第三场 6.2
2018/06/03 DOTA
Python自定义scrapy中间模块避免重复采集的方法
2015/04/07 Python
python中pandas.DataFrame排除特定行方法示例
2017/03/12 Python
Django学习教程之静态文件的调用详解
2018/05/08 Python
Python selenium抓取微博内容的示例代码
2018/05/17 Python
python实现飞机大战微信小游戏
2020/03/21 Python
Django RBAC权限管理设计过程详解
2019/08/06 Python
Python发送邮件的实例代码讲解
2019/10/16 Python
python 日志模块 日志等级设置失效的解决方案
2020/05/26 Python
CSS3圆角边框和边界图片效果实例
2016/07/01 HTML / CSS
html5 实现客户端验证上传文件的大小(简单实例)
2016/05/15 HTML / CSS
Erwin Müller穆勒家居瑞士官网:您整个家庭的邮购公司
2019/12/28 全球购物
PHP面试题附答案
2015/11/28 面试题
24岁生日感言
2014/01/13 职场文书
学生会招新策划书
2014/02/14 职场文书
镇人大副主席民主生活会对照检查材料思想汇报
2014/10/01 职场文书
驻村工作简报
2015/07/20 职场文书
九年级历史教学反思
2016/02/19 职场文书
导游词之太湖
2019/10/08 职场文书
oracle连接ODBC sqlserver数据源的详细步骤
2021/07/25 Oracle
golang为什么要统一错误处理
2022/04/03 Golang