网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

Python如何实现实时跟随微信窗口移动的GUI界面

今天小编给大家分享一下Python如何实现实时跟随微信窗口移动的GUI界面的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

创新互联是一家专业提供铜仁企业网站建设,专注与成都网站建设、做网站、H5高端网站建设、小程序制作等业务。10年已为铜仁众多企业、政府机构等服务。创新互联专业的建站公司优惠进行中。

代码

import tkinter as tk
import win32gui
import win32con

class FollowWeChatWindow(tk.Tk):
    def __init__(self):
        super().__init__()

        # 隐藏窗口边框和标题栏
        self.overrideredirect(True)
        self.title("跟随微信的窗口")

        # 窗口置顶
        self.wm_attributes('-topmost', True)

        # 创建一个标签,用于显示窗口位置信息
        self.label = tk.Label(self, text='')
        self.label.pack()

        # 启动定时器
        self.after(50, self.update_window)

    def update_window(self):
        # 获取微信窗口句柄和位置
        wechat_hwnd = win32gui.FindWindow('WeChatMainWndForPC', None)
        if wechat_hwnd:
            wechat_rect = win32gui.GetWindowRect(wechat_hwnd)

            # print(win32gui.GetWindowText(win32gui.GetForegroundWindow()))
            # 获取当前鼠标点击的窗口的句柄的标题
            getClickHownTitle = win32gui.GetWindowText(win32gui.GetForegroundWindow())

            # 判断微信窗口状态,显示或隐藏本窗口
            if win32gui.GetForegroundWindow() == wechat_hwnd:
                # 当前点击的句柄=微信的句柄
                self.wm_attributes('-alpha', 1.0)
            elif getClickHownTitle == '跟随微信的窗口':
                # 当前点击的窗口的标题=跟随微信的窗口
                self.wm_attributes('-alpha', 1.0)
            else:
                # 不满足以上两个条件的其中一条,都得隐藏窗口
                self.wm_attributes('-alpha', 0.0)

            print(getClickHownTitle)

            # 获取微信窗口高度
            WeChat_Height = wechat_rect[3] - wechat_rect[1]

            # 更新本窗口位置
            self.geometry('200x%d+%d+%d' % (WeChat_Height, wechat_rect[2], wechat_rect[1]))

            # 更新标签文本
            self.label.configure(text=win32gui.GetForegroundWindow())

        else:
            # 微信窗口未找到,隐藏本窗口
            self.wm_attributes('-alpha', 0.0)

        # 继续定时器
        self.after(50, self.update_window)

if __name__ == '__main__':
    app = FollowWeChatWindow()
    app.mainloop()

代码解释

在这个示例中,使用了Python自带的tkinter界面库来实现一个简单的无边框窗口,窗口宽度200,高度与微信窗口一致。通过获取微信客户端的句柄来实时获取微信窗口的位置及大小,启动定时器实时获取到微信的显示状态,50ms更新一次状态以达到跟随的目的。

动图演示

Python如何实现实时跟随微信窗口移动的GUI界面

以上就是“Python如何实现实时跟随微信窗口移动的GUI界面”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注创新互联行业资讯频道。


标题名称:Python如何实现实时跟随微信窗口移动的GUI界面
网页地址:http://bjjierui.cn/article/gjjcho.html

其他资讯