TOP > AcroExch.App > *
説明
Acrobatアプリケーションのツール名を指定して、使用可能状態(アクティブ)にします。ツール名はコチラ「AcrobatのMenu and Toolbar Button Names 一覧」を御覧ください。
英語解説の原文 ) Sets the active tool according to the specified name, and determines whether the tool is to be used only once or should remain active after being used (persistent).
形式
VARIANT_BOOL SetActiveTool(BSTR szButtonName,long bPersistent);
引数
- 第一引数(BSTR szButtonName):
使用可能状態にしたいツール名 。言語に依存しない英字文字列を指定します。
例)Print -> 印刷、Hand -> 手、Text -> ノート注釈(=ノートツール) - 第二引数(long bPersistent):
第一引数で指定したツールを
1:一時的に使用可能状態にする
0:持続的に使用可能状態にする
を数字の1と0で指定します。
数字なら何でもOK。
英語解説の原文 ) A request indicating whether the tool should be persistent. A positive number indicates a request to the Acrobat application for the tool to remain active after it has been used. If 0 is specified, the Acrobat application reverts to the previously active tool after this tool is used once.
戻り値
- -1 : True(真)で成功。
使用可能状態(アクティブ)に出来た。 - 0 : False(偽)で失敗。理由は以下の3つの内の一つ。
存在しないツール名を指定した。使用可能状態に出来ないツール名を指定した。使用可能状態にツールが出来なかった。
動作するバージョン
| Acrobat | 動作 | 備考 |
|---|---|---|
| 4 | OK | Acrobat 4.0 ※Windows 98SE + Excel 2000 |
| 5 | OK | Acrobat 5.0.5 |
| 6 | OK | Acrobat 6.0.3 Pro |
| 7 | OK | Acrobat 7.0.9 Pro Acrobat 7.1.4 Pro |
| 8 | OK | Acrobat 8.2.2 Pro |
| 9 | OK | Acrobat 9.3.2 Extended |
| 10 | ― | Acrobat X (10.1.8) Extended |
| 11 | ― | Acrobat XI (11.0.04) Extended |
- OK:動作します。
- NO:動作しない。
- ―:未確認。
サンプル:ExcelのVBA
「矢印」、「手」、「ノート注釈(N)」のツールを使用可能状態(アクティブ)にします。
- 参照設定を事前に行ないます。
- 以下のサンプルはテスト用です。F8キーでステップ実行して動作確認します。
001 Sub AcroExch_App_SetActiveTool()
002
003 'Acrobatオブジェクトの定義&作成
004 'Acrobat 4,5,6 の時
005 ' Dim objAcroApp As Acrobat.CAcroApp
006 ' Dim objAcroPDDoc As Acrobat.CAcroPDDoc
007 ' Set objAcroApp = CreateObject("AcroExch.App")
008 ' Set objAcroPDDoc = CreateObject("AcroExch.PDDoc")
009
010 'Acrobat 7,8,9,10,11 の時
011 Dim objAcroApp As New Acrobat.AcroApp
012 Dim objAcroPDDoc As New Acrobat.AcroPDDoc
013
014 '以降はAcrobat全て共通
015 Dim lRet As Long '戻り値
016 Const CON_PDF_FILE = "C:\work\Test01.pdf"
017
018 MsgBox "GetActiveTool Name = (" & _
019 objAcroApp.GetActiveTool() & ")"
020
021 'Acrobatを起動表示する
022 lRet = objAcroApp.Show
023 lRet = objAcroPDDoc.Open(CON_PDF_FILE)
024 'PDFドキュメントを画面表示する
025 objAcroPDDoc.OpenAVDoc CON_PDF_FILE
026
027 '① 「矢印」ツールを使用可能状態(アクティブ)にする
028 lRet = objAcroApp.SetActiveTool("Select", 1)
029 '② 「手」ツールを使用可能状態(アクティブ)にする
030 lRet = objAcroApp.SetActiveTool("Hand", 1)
031 '③ 「ツール -> 注釈 -> ノート注釈」ツールを使用可能状態(アクティブ)にする
032 lRet = objAcroApp.SetActiveTool("Text", 1)
033
034 'PDFドキュメントを閉じる
035 ' lRet = objAcroPDDoc.Close '<-これでは閉じれない
036 lRet = objAcroApp.CloseAllDocs
037 'アプリケーションの終了
038 lRet = objAcroApp.Hide
039 lRet = objAcroApp.Exit
040
041 'オブジェクトの強制開放
042 Set objAcroPDDoc = Nothing
043 Set objAcroApp = Nothing
044
045 End Sub
実行結果
Acrobat v8 の場合
補足
- ツール名は「AcrobatのMenu and Toolbar Button Names 一覧」を参照して下さい。
- 第二引数は数字を指定します。何を指定してもSetActiveTool メソッドとしては意味が無いです。
- このメソッドを実行してもAcrobatアプリケーションを再起動すると元の状態に戻ります。Acrobatアプリケーションのバージョンにより異なりますが通常は「手」(=Hand)に戻ります。
- Acrobat v4 は「Text」 ツールは無いです。
注意
- 第二引数の動作が理解出来ないです。英語解説のミスか、メソッド自体の不具合かは不明です。
その箇所はAdobe社の英語解説の原文を表示します。
Adobe Web 解説
OLE Automation / AcroExch.App / SetActiveTool (公式サイト・英語)
動作確認環境
- Windows98SE( + WindowsUpdate) +
Acrobat 4.0 + Office 2000 - WindowsXP Pro( + SP3 + WindowsUpdate) +
Acrobat 5.0.5 + Office 2003( + SP3) - WindowsXP Pro( + SP3 + WindowsUpdate) +
Acrobat 6.0.3 Pro + Office 2003( + SP3) - WindowsXP Pro( + SP2 + WindowsUpdate) +
Acrobat 7.0.9 Pro + Office 2003 - WindowsXP Pro( + SP3 + WindowsUpdate) +
Acrobat 7.1.4 Pro + Office 2003( + SP3) - WindowsXP Pro( + SP3 + WindowsUpdate) +
Acrobat 8.2.2 Pro + Office 2003( + SP3) - WindowsXP Pro( + SP3 + WindowsUpdate) +
Acrobat 9.3.2 Extended + Office 2003( + SP3)
求む
- 第二引数に関する情報があれば、コメントを希望します。
< 戻る >
サイト管理人の技術メモ
これ以降はサイト管理者が当サイト又は当ページを維持&管理するためのメモです。見る必要も無く公開用にも書いてません。
SDKの英文解説を載せたのは、実際の動作と英文の解説に隔たりを感じた為。ひょっとしたらコチラが何か勘違いをしているのかもしれない。
まあ、コレを使う必要が何処で有るかは疑問だから、またどの様な状態でこれを使うのか、想像すらできないから、気にしなくてもイイ機能だと思っている。


