消息对象
消息对象指的是调用GetAllMessage、GetListenMessage等方法后返回的消息对象,分为物种消息类型,分别是系统消息
时间消息
撤回消息
好友消息
自己的消息
,消息对象包含了消息的所有信息,包括消息类型、消息内容、消息发送者等。
1. 系统消息
支持属性:
属性名 | 类型 | 说明 |
---|---|---|
type | str | 消息类型,固定为sys |
content | str | 消息内容 |
sender | str | 发送者,固定为SYS |
info | list | 原始消息信息,包含了消息的所有信息 |
control | uiautomation.Control | 该消息的uiautomation控件 |
id | str | 消息id |
Python
... # 此处省略wx对象的初始化
msgs = wx.GetAllMessage()
for msg in msgs:
if msg.type == 'sys':
print(f'【系统消息】{msg.content}')
2. 时间消息
支持属性:
属性名 | 类型 | 说明 |
---|---|---|
type | str | 消息类型,固定为time |
content | str | 消息内容 |
sender | str | 发送者,固定为Time |
time | str | 时间消息内容,格式为%Y-%m-%d %H:%M |
info | list | 原始消息信息,包含了消息的所有信息 |
control | uiautomation.Control | 该消息的uiautomation控件 |
id | str | 消息id |
Python
... # 此处省略wx对象的初始化
msgs = wx.GetAllMessage()
for msg in msgs:
if msg.type == 'time':
print(f'【时间消息】{msg.time}')
3. 撤回消息
支持属性:
属性名 | 类型 | 说明 |
---|---|---|
type | str | 消息类型,固定为recall |
content | str | 消息内容 |
sender | str | 发送者,固定为Recall |
info | list | 原始消息信息,包含了消息的所有信息 |
control | uiautomation.Control | 该消息的uiautomation控件 |
id | str | 消息id |
Python
... # 此处省略wx对象的初始化
msgs = wx.GetAllMessage()
for msg in msgs:
if msg.type == 'recall':
print(f'【撤回消息】{msg.content}')
4. 好友消息
支持属性:
属性名 | 类型 | 说明 |
---|---|---|
type | str | 消息类型,固定为friend |
content | str | 消息内容 |
sender | str | 发送者 |
sender_remark | str | 发送者备注名 |
info | list | 原始消息信息,包含了消息的所有信息 |
control | uiautomation.Control | 该消息的uiautomation控件 |
id | str | 消息id |
Python
... # 此处省 略wx对象的初始化
msgs = wx.GetAllMessage()
for msg in msgs:
if msg.type == 'friend':
sender = msg.sender # 这里可以将msg.sender改为msg.sender_remark,获取备注名
print(f'{sender}:{msg.content}')
支持方法
方法名 | 说明 |
---|---|
quote | 引用消息进行回复,唯一参数msg,str类型 |
forward | 转发消息,唯一参数friend,str类型 |
parse | 解析合并消息内容,当且仅当消息内容为合并转发的消息时有效,返回列表 |
Python
... # 此处省略wx对象的初始化
msgs = wx.GetAllMessage()
for msg in msgs:
if msg.type == 'friend':
msg.quote('回复消息') # 引用消息进行回复
break