豐富的 UIA 元素屬性
list_accessibility_elements / AccessibilityElement``只帶有 name / role / bounds /
app / pid / automation_id。自動化在*動作之前*常需要更多資訊:**控制項是否啟用**(別點停用的
按鈕)、**是否在畫面外**(是否真的可見)、其 **item_status**(欄位的驗證 / 錯誤文字)、
**help_text**(工具提示),以及 **accelerator_key**(以快捷鍵而非點擊來驅動它)。``ax_props
就提供這些高價值的 UIA 屬性。
get_element_properties()——完整的屬性字典,is_element_enabled()——常見的動作前守衛。
每個函式都是對可注入的 accessibility.backends.get_backend() 接縫的薄分派——可在任何平台透過
注入 fake backend 進行無頭測試;真正的 UIA 屬性讀取位於 Windows 後端。不匯入 PySide6。
無頭 API
from je_auto_control import get_element_properties, is_element_enabled
get_element_properties(name="Save", role="button")
# {"enabled": False, "offscreen": False, "help_text": "Save the file",
# "item_status": "", "accelerator_key": "Ctrl+S", "access_key": "S",
# "orientation": 0}
if is_element_enabled(name="Submit"):
click_text("Submit") # 別點停用的按鈕
控制項以 name / role / app_name / automation_id 定位(與其他原生控制讀取相同)。
get_element_properties 回傳屬性字典,找不到控制項時回傳 None;``is_element_enabled``
回傳 enabled 旗標(找不到則為 None)。
執行器指令
AC_get_element_properties 回傳 {found, properties}。以唯讀
ac_get_element_properties MCP 工具及 Script Builder 指令(位於 Native UI 分類下)
形式提供。