Cocoa Accessibility API を使用して、別のアプリケーションでテキスト フィールド (AXTextField) の値を変更しようとしていますが、問題が発生しました。私のコードは問題のテキスト フィールドの内容を正しく識別して変更します。フィールドのテキストは目に見えて変化しますが、制御しようとしているプログラムによって変更が登録されません。キーボード イベントを生成せずに API でこれを行う方法はありますか?
サンプルコード:
AXUIElementCopyElementAtPosition(appRef,
clickPoint.x,
clickPoint.y,
&boxRef);
NSString *valueToSet = [NSString stringWithFormat:@"%f",amount];
AXUIElementSetAttributeValue(boxRef,kAXValueAttribute,valueToSet);
そして、テキストフィールドは「金額」で指定された値に変更されますが、他のプログラムは変更を認識しません.変更を取得するには、自分で数字を入力する必要があります.ボックスに新しい値を入力すると、プログラムが応答します)。誰かが私を正しい方向に向けることができますか?