mirror of
https://github.com/wtc86939209/WeChatMsg110.git
synced 2026-06-15 10:13:14 +08:00
更改头像显示
This commit is contained in:
@@ -3,6 +3,7 @@ from PyQt5.QtWidgets import QWidget, QVBoxLayout, QSpacerItem, QSizePolicy, QLab
|
||||
|
||||
from app.DataBase import msg
|
||||
from app.components.bubble_message import BubbleMessage, ScrollBar, ScrollArea, ScrollAreaContent
|
||||
from app.person import MePC
|
||||
|
||||
|
||||
class ChatInfo(QWidget):
|
||||
@@ -52,12 +53,13 @@ class ChatInfo(QWidget):
|
||||
try:
|
||||
type_ = message[2]
|
||||
# print(type_, type(type_))
|
||||
is_send = message[4]
|
||||
avatar = MePC().avatar if is_send else self.contact.avatar
|
||||
if type_ == 1:
|
||||
str_content = message[7]
|
||||
is_send = message[4]
|
||||
bubble_message = BubbleMessage(
|
||||
str_content,
|
||||
self.contact.avatar,
|
||||
avatar,
|
||||
type_,
|
||||
is_send
|
||||
)
|
||||
|
||||
+17
-1
@@ -10,15 +10,17 @@
|
||||
from random import randint
|
||||
|
||||
from PyQt5.QtCore import *
|
||||
from PyQt5.QtGui import QPixmap
|
||||
from PyQt5.QtWidgets import *
|
||||
|
||||
from app import config
|
||||
from app.DataBase import msg
|
||||
from app.DataBase import msg, misc
|
||||
from app.Ui.Icon import Icon
|
||||
from . import mainwindow
|
||||
from .chat import ChatWindow
|
||||
from .contact import ContactWindow
|
||||
from .tool import ToolWindow
|
||||
from ..person import MePC
|
||||
|
||||
# 美化样式表
|
||||
Stylesheet = """
|
||||
@@ -81,6 +83,7 @@ class MainWinController(QMainWindow, mainwindow.Ui_MainWindow):
|
||||
tool_item = QListWidgetItem(Icon.MyInfo_Icon, '工具', self.listWidget)
|
||||
|
||||
tool_window = ToolWindow()
|
||||
tool_window.get_info_signal.connect(self.set_my_info)
|
||||
self.chat_window = ChatWindow()
|
||||
self.stackedWidget.addWidget(self.chat_window)
|
||||
self.contact_window = ContactWindow()
|
||||
@@ -102,6 +105,19 @@ class MainWinController(QMainWindow, mainwindow.Ui_MainWindow):
|
||||
self.contact_window.show_contacts()
|
||||
self.stackedWidget.setCurrentIndex(row)
|
||||
|
||||
def set_my_info(self, wxid):
|
||||
self.avatar = QPixmap()
|
||||
img_bytes = misc.get_avatar_buffer(wxid)
|
||||
if img_bytes[:4] == b'\x89PNG':
|
||||
self.avatar.loadFromData(img_bytes, format='PNG')
|
||||
else:
|
||||
self.avatar.loadFromData(img_bytes, format='jfif')
|
||||
self.avatar.scaled(60, 60)
|
||||
me = MePC()
|
||||
me.set_avatar(img_bytes)
|
||||
self.myavatar.setScaledContents(True)
|
||||
self.myavatar.setPixmap(self.avatar)
|
||||
|
||||
def about(self):
|
||||
"""
|
||||
关于
|
||||
|
||||
@@ -12,7 +12,7 @@ from . import decryptUi
|
||||
|
||||
class DecryptControl(QWidget, decryptUi.Ui_Dialog):
|
||||
DecryptSignal = pyqtSignal(str)
|
||||
registerSignal = pyqtSignal(str)
|
||||
get_wxidSignal = pyqtSignal(str)
|
||||
|
||||
def __init__(self, parent=None):
|
||||
super(DecryptControl, self).__init__(parent)
|
||||
@@ -47,6 +47,7 @@ class DecryptControl(QWidget, decryptUi.Ui_Dialog):
|
||||
self.label_version.setText(self.info['version'])
|
||||
self.lineEdit.setFocus()
|
||||
self.checkBox.setChecked(True)
|
||||
self.get_wxidSignal.emit(self.info['wxid'])
|
||||
if self.wx_dir and os.path.exists(os.path.join(self.wx_dir, self.info['wxid'])):
|
||||
self.label_ready.setText('已就绪')
|
||||
except Exception as e:
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
from random import randint
|
||||
|
||||
from PyQt5.QtCore import Qt
|
||||
from PyQt5.QtCore import Qt, pyqtSignal
|
||||
from PyQt5.QtWidgets import QWidget, QListWidgetItem, QLabel
|
||||
|
||||
from .pc_decrypt import DecryptControl
|
||||
@@ -45,6 +45,8 @@ HistoryPanel::item:hover {
|
||||
|
||||
|
||||
class ToolWindow(QWidget, Ui_Dialog):
|
||||
get_info_signal = pyqtSignal(str)
|
||||
|
||||
def __init__(self, parent=None):
|
||||
super().__init__(parent)
|
||||
self.setupUi(self)
|
||||
@@ -58,8 +60,9 @@ class ToolWindow(QWidget, Ui_Dialog):
|
||||
contact_item = QListWidgetItem(Icon.Contact_Icon, 'None', self.listWidget)
|
||||
myinfo_item = QListWidgetItem(Icon.MyInfo_Icon, 'None', self.listWidget)
|
||||
tool_item = QListWidgetItem(Icon.MyInfo_Icon, 'None', self.listWidget)
|
||||
tool_window = DecryptControl()
|
||||
self.stackedWidget.addWidget(tool_window)
|
||||
decrypt_window = DecryptControl()
|
||||
decrypt_window.get_wxidSignal.connect(self.get_info_signal)
|
||||
self.stackedWidget.addWidget(decrypt_window)
|
||||
label = QLabel('我是页面', self)
|
||||
label.setAlignment(Qt.AlignCenter)
|
||||
# 设置label的背景颜色(这里随机)
|
||||
|
||||
Reference in New Issue
Block a user