24 lines
856 B
Python
24 lines
856 B
Python
# pip install pygetwindow pywin32
|
|
import win32gui, win32con, win32clipboard, time, json
|
|
|
|
def send_to_algodoo_console(code: str):
|
|
# 1. 找到 Console 窗口
|
|
hwnd = win32gui.FindWindow(None, "Console")
|
|
if not hwnd:
|
|
raise RuntimeError("请先按 F11 打开 Algodoo Console")
|
|
win32gui.ShowWindow(hwnd, win32con.SW_RESTORE)
|
|
win32gui.SetForegroundWindow(hwnd)
|
|
|
|
# 2. 把代码放进剪贴板
|
|
win32clipboard.OpenClipboard()
|
|
win32clipboard.EmptyClipboard()
|
|
win32clipboard.SetClipboardText(code, win32con.CF_TEXT)
|
|
win32clipboard.CloseClipboard()
|
|
|
|
# 3. 模拟 Ctrl+V 回车
|
|
time.sleep(0.1)
|
|
win32gui.SendMessage(hwnd, win32con.WM_PASTE, 0, 0)
|
|
win32gui.SendMessage(hwnd, win32con.WM_KEYDOWN, win32con.VK_RETURN, 0)
|
|
|
|
# 用法示例
|
|
send_to_algodoo_console('scene.gravity = [0, -5];') |