こちらの続きです。
"プロパティをリセット"コマンドをマクロで実行1 - C#ATIA
基本的に断念しているのですが、"UI Automation"と言うものの存在を
知りました。
【VBAでUIAutomation】アプリケーションをマクロで動かす | やろまいCode
"UI Automation catia"で検索すると、自分のところがHit・・・。
UI Automation - C#ATIA
"時間出来たら試そう。"って書いていますが、試していません。
ちょっと試したものの、とにかく難しい。
難しくしている一番の原因は、ローカルウィンドウで中身を見れない
状態になる事です。自分の場合、これが見れないとほぼお手上げです。
同じような事が出来るpythonモジュール無いかな?と思ったところ
"pywinauto"と言うものが有りました。
pywinautoでRPA(自動化)◇導入編【Python】 - プログラムでおかえしできるかな
試したところ"UI Automation"より楽そうです。
(vscodeが使える時点で、かなり楽・・・)
チョロチョロ試しつつ、こんな感じのものを作りました。
# catia - python from pywinauto import Desktop apps: Desktop = Desktop(backend="uia") catia_com = apps["CATIA V5"] catia_com["子に適用"].click() catia_com["プロパティをリセット"].children()[0].click()
念のため、先日利用していたpycatiaは未使用です。
実際の動作はこの様な感じです。
最初に画面左では、"子に適用"のチェックをOFFで"プロパティをリセット"を
手動で行っています。(結果的に色はリセットされない)
続いて、"プロパティをリセット"ダイアログを表示させた状態で、
先程のスクリプトを実行させています。
御覧の通り、色はリセットされます。
但し、何でメニューのドロップダウンが全部開くの?
これを防がないと、処理も遅くなる・・・。