You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在屏幕角落(如右下角)显示内容?现有代码需改造

实现屏幕角落悬浮显示鼠标坐标

嘿,我完全懂你的需求——不想把鼠标坐标写到文件里,也不想在终端打印,就是要在桌面角落搞个悬浮的小窗口实时显示对吧?咱可以用Python自带的tkinter库来搞定,不用额外安装任何包,简单又实用。

替换后的实现代码

import tkinter as tk
import pyautogui

def update_position():
    # 获取当前鼠标坐标
    x, y = pyautogui.position()
    # 格式化坐标字符串
    position_str = f'X: {x:>4} Y: {y:>4}'
    # 更新标签文本
    position_label.config(text=position_str)
    # 每隔100毫秒刷新一次(可调整频率)
    root.after(100, update_position)

if __name__ == "__main__":
    # 创建主窗口
    root = tk.Tk()
    # 去掉窗口边框,变成悬浮样式
    root.overrideredirect(True)
    # 设置窗口位置到屏幕右上角(可自行调整)
    screen_width = root.winfo_screenwidth()
    window_width = 120
    window_height = 30
    root.geometry(f"{window_width}x{window_height}+{screen_width - window_width}+0")
    # 设置窗口背景半透明(可选,0全透明,1不透明)
    root.attributes('-alpha', 0.8)
    # 创建显示坐标的标签
    position_label = tk.Label(root, text="", font=("Arial", 12), bg="#333333", fg="white")
    position_label.pack(fill=tk.BOTH, expand=True)
    
    try:
        # 启动坐标更新循环
        update_position()
        # 启动Tkinter主循环
        root.mainloop()
    except KeyboardInterrupt:
        # 捕获Ctrl+C退出
        root.destroy()
        print('OK Boomer')

代码关键点解释

  • overrideredirect(True):去掉窗口的标题栏和边框,让它变成一个纯悬浮的小面板,完全脱离终端/控制台。
  • geometry():精确控制窗口位置,这里设置在屏幕右上角,你可以修改参数把它放到左下角、左上角等任意角落。
  • attributes('-alpha', 0.8):给窗口加半透明效果,不会完全挡住后面的内容,使用体验更友好。
  • after(100, update_position):每隔100毫秒自动调用更新函数,实现实时刷新坐标的效果,数值越小刷新越频繁(比如改成50就是每秒刷新20次)。
  • 处理KeyboardInterrupt:当你按下Ctrl+C时,会自动销毁窗口并打印你想要的提示语。

其他可选方案

如果你想要更复杂的样式或者交互功能,也可以考虑用PyQt或者Pygame,但tkinter作为Python内置库,是最轻量化的选择,足够满足你的基础需求啦。

内容的提问来源于stack exchange,提问作者Minute

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.08 19:22:38