コピーと貼り付けの例

次の例では、セッション・ウィンドウ内でテキストのブロックにマークを付け、 システム・クリップボードにコピーして、セッション・ウィンドウ内の新しい 位置に再度貼り付ける方法を示します。この例では、以下のアクション・エレメントが使用されています: ボックス選択アクション、入力アクション、マウス・クリック・アクション、および休止アクション。

このマクロ・スクリプトのテキストを本書からシステム・クリップボードにコピーし、 システム・クリップボードからコード・エディターにコピーできます (本書からコード・エディターへのスクリプトのコピー・アンド・ペーストを参照)。このスクリプトをマクロ・エディターに保管した後、マクロ・エディターまたはコード・エディターを使用してスクリプトを編集できます。

この例については、次の点に注意してください。
  • この例は、COPY PASTE という名前の 1 つのマクロ・スクリプト全体で構成されます。
  • <actions> エレメント内では次のアクションが行われます:
    • <boxselection> アクションで、マーキング長方形を描画します。
    • <pause> アクションで、マクロが再生されるときにユーザーが何が行われているかが分かるよう、0.5 秒間だけ待機します。
    • <input> アクションで、マークされた領域をクリップボードにコピーする [copy] アクションを入力します。
    • <mouseclick> アクションで、貼り付けが行われる位置にカーソルを置きます。
    • <input> アクションで、クリップボードの内容をセッション・ウィンドウの新しい位置に貼り付ける [paste] キーを入力します。
  • このマクロは、ISPF 基本オプション・メニューから 実行されるように書かれています (図 2 を参照)。マクロは、テキスト Spool Display and Search Facility を行 18 からシステム・クリップボードにコピーし、テキストをクリップボードから行 4 の「Option ===>」入力フィールドに貼り付けます。
  • この例を実行しても正しく貼り付けが行われない場合は、 指定したターゲット領域が 3270 または 5250 入力フィールドの中に あることを確認してください。Z and I Emulator for Web クライアントのアプリケーション画面内で、保護フィールドにテキストを貼り付けることはできません。
図 1. サンプル・コード COPY PASTE
<HAScript name="COPY PASTE" description=" " timeout="60000" pausetime="300"
            promptall="true" author="" creationdate="" supressclearevents="false"
            usevars="false" >

   <screen name="Screen1" entryscreen="true" exitscreen="true"
            transient="false">
      <description>
         <oia status="NOTINHIBITED" optional="false" invertmatch="false" />
      </description>
      <actions>
         <boxselection type="SELECT" srow="18" scol="19"
                 erow="18" ecol="51" />
         <pause value="500" />
         <input value="[copy]" row="0" col="0" movecursor="true"
                 xlatehostkeys="true" encrypted="false" />
         <mouseclick row="4" col="15" />
         <input value="[paste]" row="0" col="0" movecursor="true"
                 xlatehostkeys="true" encrypted="false" />
      </actions>
      <nextscreens timeout="0" >
      </nextscreens>
   </screen>

</HAScript>