抽屉效果_仿QQ抽屉效果界面python

案例:模仿设计一个QQ好友界面

工具:python PyQt5  TooBox控件  TooButton控件

程序运行结果如下:

(1)初始界面

6370cae3a006019a794aa1ed774f0125.png

(2)可选择不同界面

f906d5f77a189bc3525ff663b97a3f36.png7460b43580f21df01d6a37780ab7a929.pngad1b79203dd1dd271c53113d142f76b8.png

设计程序如下:

from PyQt5 import QtCore, QtGui, QtWidgetsclass Ui_MainWindow(object):    def setupUi(self, MainWindow):        MainWindow.setObjectName("MainWindow")        MainWindow.resize(359, 705)        self.centralwidget = QtWidgets.QWidget(MainWindow)        self.centralwidget.setObjectName("centralwidget")        # 创建ToolBox工具盒        self.toolBox = QtWidgets.QToolBox(self.centralwidget)        self.toolBox.setGeometry(QtCore.QRect(0, 0, 351, 621))        self.toolBox.setObjectName("toolBox")        # 设置 我的好友        self.page = QtWidgets.QWidget()        self.page.setGeometry(QtCore.QRect(0, 0, 351, 591))        self.page.setObjectName("page")        self.toolButton = QtWidgets.QToolButton(self.page)        self.toolButton.setGeometry(QtCore.QRect(0, 0, 151, 31))        icon = QtGui.QIcon()        icon.addPixmap(QtGui.QPixmap("图标/01.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)        self.toolButton.setIcon(icon)        self.toolButton.setIconSize(QtCore.QSize(96, 96))        self.toolButton.setToolButtonStyle(QtCore.Qt.ToolButtonTextBesideIcon)        self.toolButton.setAutoRaise(True)        self.toolButton.setObjectName("toolButton")        self.toolButton_2 = QtWidgets.QToolButton(self.page)        self.toolButton_2.setGeometry(QtCore.QRect(0, 40, 151, 31))        icon1 = QtGui.QIcon()        icon1.addPixmap(QtGui.QPixmap("图标/02.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)        self.toolButton_2.setIcon(icon1)        self.toolButton_2.setIconSize(QtCore.QSize(96, 96))        self.toolButton_2.setToolButtonStyle(QtCore.Qt.ToolButtonTextBesideIcon)        self.toolButton_2.setAutoRaise(True)        self.toolButton_2.setObjectName("toolButton_2")        self.toolButton_3 = QtWidgets.QToolButton(self.page)        self.toolButton_3.setGeometry(QtCore.QRect(0, 80, 151, 31))        icon2 = QtGui.QIcon()        icon2.addPixmap(QtGui.QPixmap("图标/03.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)        self.toolButton_3.setIcon(icon2)        self.toolButton_3.setIconSize(QtCore.QSize(96, 96))        self.toolButton_3.setToolButtonStyle(QtCore.Qt.ToolButtonTextBesideIcon)        self.toolButton_3.setAutoRaise(True)        self.toolButton_3.setObjectName("toolButton_3")        self.toolBox.addItem(self.page, "")        # 设置 我的同学        self.page_2 = QtWidgets.QWidget()        self.page_2.setGeometry(QtCore.QRect(0, 0, 351, 601))        self.page_2.setObjectName("page_2")        self.toolButton_4 = QtWidgets.QToolButton(self.page_2)        self.toolButton_4.setGeometry(QtCore.QRect(0, 0, 141, 31))        icon3 = QtGui.QIcon()        icon3.addPixmap(QtGui.QPixmap("图标/04.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)        self.toolButton_4.setIcon(icon3)        self.toolButton_4.setIconSize(QtCore.QSize(96, 96))        self.toolButton_4.setToolButtonStyle(QtCore.Qt.ToolButtonTextBesideIcon)        self.toolButton_4.setAutoRaise(True)        self.toolButton_4.setObjectName("toolButton_4")        self.toolBox.addItem(self.page_2, "")        # 设置 我的同事        self.page_3 = QtWidgets.QWidget()        self.page_3.setObjectName("page_3")        self.toolButton_5 = QtWidgets.QToolButton(self.page_3)        self.toolButton_5.setGeometry(QtCore.QRect(0, 0, 141, 31))        icon4 = QtGui.QIcon()        icon4.addPixmap(QtGui.QPixmap("图标/05.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)        self.toolButton_5.setIcon(icon4)        self.toolButton_5.setIconSize(QtCore.QSize(96, 96))        self.toolButton_5.setToolButtonStyle(QtCore.Qt.ToolButtonTextBesideIcon)        self.toolButton_5.setAutoRaise(True)        self.toolButton_5.setObjectName("toolButton_5")        self.toolButton_6 = QtWidgets.QToolButton(self.page_3)        self.toolButton_6.setGeometry(QtCore.QRect(0, 40, 141, 31))        icon5 = QtGui.QIcon()        icon5.addPixmap(QtGui.QPixmap("图标/06.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)        self.toolButton_6.setIcon(icon5)        self.toolButton_6.setIconSize(QtCore.QSize(96, 96))        self.toolButton_6.setToolButtonStyle(QtCore.Qt.ToolButtonTextBesideIcon)        self.toolButton_6.setAutoRaise(True)        self.toolButton_6.setObjectName("toolButton_6")        self.toolBox.addItem(self.page_3, "")        # 设置 陌生人        self.page_4 = QtWidgets.QWidget()        self.page_4.setObjectName("page_5")        self.toolButton_7 = QtWidgets.QToolButton(self.page_4)        self.toolButton_7.setGeometry(QtCore.QRect(0, 0, 141, 31))        icon6 = QtGui.QIcon()        icon6.addPixmap(QtGui.QPixmap("图标/07.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)        self.toolButton_7.setIcon(icon6)        self.toolButton_7.setIconSize(QtCore.QSize(96, 96))        self.toolButton_7.setToolButtonStyle(QtCore.Qt.ToolButtonTextBesideIcon)        self.toolButton_7.setAutoRaise(True)        self.toolButton_7.setObjectName("toolButton_7")        self.toolBox.addItem(self.page_4, "")        MainWindow.setCentralWidget(self.centralwidget)                self.retranslateUi(MainWindow)        # 默认选择第4个页面,“我的好友”        self.toolBox.setCurrentIndex(3)        QtCore.QMetaObject.connectSlotsByName(MainWindow)    def retranslateUi(self, MainWindow):        _translate = QtCore.QCoreApplication.translate        MainWindow.setWindowTitle(_translate("MainWindow", "我的QQ"))        self.toolButton.setText(_translate("MainWindow", "阿乐"))        self.toolButton_2.setText(_translate("MainWindow", "阿宇"))        self.toolButton_3.setText(_translate("MainWindow", "阿峰"))        self.toolBox.setItemText(self.toolBox.indexOf(self.page), _translate("MainWindow", "我的好友"))        self.toolButton_4.setText(_translate("MainWindow", "阿东"))        self.toolBox.setItemText(self.toolBox.indexOf(self.page_2), _translate("MainWindow", "同学"))        self.toolButton_5.setText(_translate("MainWindow", "阿南"))        self.toolButton_6.setText(_translate("MainWindow", "阿强"))        self.toolBox.setItemText(self.toolBox.indexOf(self.page_3), _translate("MainWindow", "同事"))        self.toolButton_7.setText(_translate("MainWindow", "阿丽"))        self.toolBox.setItemText(self.toolBox.indexOf(self.page_4), _translate("MainWindow", "陌生人"))import sys# 主方法,程序从此处启动PyQt设计的窗体if __name__ == '__main__':   app = QtWidgets.QApplication(sys.argv)   MainWindow = QtWidgets.QMainWindow() # 创建窗体对象   ui = Ui_MainWindow() # 创建PyQt设计的窗体对象   ui.setupUi(MainWindow) # 调用PyQt窗体的方法对窗体对象进行初始化设置   MainWindow.show() # 显示窗体   sys.exit(app.exec_()) # 程序关闭时退出进程
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值