Python PyQt4实现QQ抽屉效果

作者:gavinr 时间:2023-10-08 08:06:42 

本文实例为大家分享了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目录下,然后在解释中调用模块,但是不能显示,后来就改用了绝对路径

来源:https://blog.csdn.net/gavinr/article/details/6992105

标签:Python,PyQt4,抽屉
0
投稿

猜你喜欢

  • Jinja2实现模板渲染与访问对象属性流程详解

    2022-09-18 14:44:20
  • PyQt5+QtChart实现柱状图的绘制

    2021-03-03 00:38:14
  • Linux系统彻底删除Mysql的详细教程

    2024-01-22 00:36:22
  • python神经网络Batch Normalization底层原理详解

    2021-01-28 12:50:08
  • php多进程中的阻塞与非阻塞操作实例分析

    2023-11-14 23:43:44
  • vue实现Input输入框模糊查询方法

    2024-04-28 09:20:46
  • Python读写zip压缩文件的方法

    2021-10-08 02:28:11
  • python中xrange用法分析

    2021-10-25 11:51:49
  • pytorch如何利用ResNet18进行手写数字识别

    2022-02-07 04:07:26
  • Java解析Excel文件并把数据存入数据库

    2024-01-22 10:42:26
  • js自定义弹框插件的封装

    2024-05-28 15:38:36
  • python实现二分查找算法

    2023-04-04 12:34:40
  • django中使用memcached示例详解

    2023-02-10 07:30:50
  • 浅谈Golang 切片(slice)扩容机制的原理

    2024-04-29 13:06:20
  • 使用VS2005调试ASP程序方法

    2007-11-02 09:56:00
  • Python tkinter中label控件动态改变值问题

    2023-09-15 19:27:18
  • 我对PyTorch dataloader里的shuffle=True的理解

    2022-04-15 19:22:48
  • 25个出色的使用叶子的logo设计

    2009-12-29 12:53:00
  • 使用pandas把某一列的字符值转换为数字的实例

    2021-08-16 08:11:55
  • torch.optim优化算法理解之optim.Adam()解读

    2023-06-24 23:30:25
  • asp之家 网络编程 m.aspxhome.com