Heim  >  Artikel  >  Backend-Entwicklung  >  Python PyQt4 implementiert den QQ-Schubladeneffekt

Python PyQt4 implementiert den QQ-Schubladeneffekt

不言
不言Original
2018-04-20 13:43:132105Durchsuche

Dieser Artikel stellt hauptsächlich Python PyQt4 zur Implementierung des QQ-Schubladeneffekts vor. Es hat einen gewissen Referenzwert.

Das Beispiel dieses Artikels teilt Ihnen Python PyQt4 mit Der spezifische Code zum Anzeigen des Schubladeneffekts dient als Referenz. Der spezifische Inhalt lautet wie folgt:

Sehen Sie sich zunächst den Screenshot-Effekt an:

Hauptsächlich unter Verwendung von QTabWidget und QToolBox-Seiten-Widgets

# -*- 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_()

Problemaufzeichnung

1 Bei Verwendung von Chinesisch im Skript erscheint eine Fehlermeldung:

SyntaxError:b8ac6eb524c94f74f8b3ff6676594678 'utf8'-Codec kann Byte 0xc4 in Position 0 nicht dekodieren: ungültiges Fortsetzungsbyte

Muss Konvertieren Sie die *.py-Datei. Speichern Sie sie als utf-8. Ich verwende gvim und habe die Codierungseinstellungen von vim nie verstanden, also habe ich eine relativ dumme Methode verwendet, sie mit Notepad geöffnet und im utf-8-Format gespeichert

2. Zuerst habe ich das Avatar-Verzeichnisbild im Verzeichnis Python32Libsite-packages abgelegt und dann das Modul in der Erklärung aufgerufen, aber es konnte später nicht zum absoluten Pfad geändert werden


Das obige ist der detaillierte Inhalt vonPython PyQt4 implementiert den QQ-Schubladeneffekt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn