Tivoli Service Desk 6.0 Developer's Toolkit Script 言語解説書
メイン・ページに戻る
ウィンドウ化された TSD Script アプリケーションでは、イベント は、アプリケーションの基本的な機能要素です。各イベントは、結果としてリアクションを導くかもしれないアクションを表します。こうしたイベントは、次のものを含めて様々なソースから発生する可能性があります。
イベントを処理するには、イベント・ハンドラー を作成します。イベント・ハンドラーは、アプリケーションの特定エリア内で発生することがあるイベントのタイプを定義し、そうしたイベントに対する適切なリアクションを定義するルーチンです。イベント・ハンドラーは、 $Event にアクセスします。この $Event は、メッセージ定数 を含む変数です。このメッセージ定数は、起こっている活動の正確なタイプを表します。このページには、こうしたメッセージ定数 (ここで取り上げられている時にはメッセージ ) についての詳しい情報があります。
ウィンドウおよびダイアログ・ボックスは、ユーザーからの指示を受け取り、それを受け継いで情報を TSD Script アプリケーションに送ります。この活動は、メッセージ転送と呼ばれています。
イベント・ハンドラーを定義する時には、送信および受信するメッセージのことを考えてください。
このページでは、メッセージは次のものにグループ分けされています。
TSD Script 関数の一部の呼び出し (ユーザー・インターフェースでのコントロールに影響を及ぼすものなど) は、メッセージをイベント・ハンドラーに送信することができます。たとえば、ダイアログ・ボックス・コントロールで DlgSetFieldValue を呼び出すと、そのダイアログ・ボックスのイベント・ハンドラーに $MsgSelect が送られます。
このページの始めで述べたように、イベント (およびそのメッセージ) は、様々なソースから受け取ることができます。直接にアプリケーションにメッセージを送る TSD Script ステートメントがあります。
こうした TSD Script ステートメント、さらにアプリケーションで受け取ることができるメッセージを次の表にリストしてあります。
各メッセージ定数は、TSD Script アプリケーションによって解釈される数値を表します。メッセージ定数 $MsgUser には、Tivoli Systems Inc. によってメッセージ定数値として確保されている数値の範囲の最高の値が含まれています。
アプリケーション用のカスタム・メッセージを作成するには、$MsgUser+n を使用してください。n は、新規メッセージ定数に割り当てる任意の数です。カスタム・メッセージ定数 $MsgUser+n は、送信可能メッセージとしても、受信可能メッセージとしても使用可能です。 $MsgUser+n の詳細は、このページの後のほうにあります。
この項では、次のトピックについて説明します。
受信可能メッセージとは、イベントによって受け取られるメッセージのことです。受信可能メッセージのテーブルには、TSD Script のすべての受信可能メッセージが要約されています。
受信可能メッセージのテーブルの解釈に役立つように、次のヒントを覚えておいてください。
受信可能メッセージのテーブル
$Event | ソース | パラメーター |
$MsgAccept | ダイアログ・ボックス | $FieldId、$FieldName |
$MsgButton | ハイパーテキスト・ウィンドウ、ダイアログ・ボックス | 1=ボタンのテキスト、 2=ボタンの ID |
$MsgCancel | ダイアログ・ボックス | $FieldId、$FieldName |
$MsgChar | ダイアログ・ボックス その他 |
$FieldId、$FieldName、 3=KeyCode $KeyCode |
$MsgCreate | ダイアログ・ボックス その他 |
$FormFile、$FormName なし |
$MsgDDEAcknowledge | いずれか | $DDEWindow、$DDEStatus (DDE 同義語を参照) |
$MsgDDEAdvise | いずれか | $DDEWindow、$DDETopic |
$MsgDDEData | いずれか | $DDEWindow、$DDETopic、$DDEData |
$MsgDDEExecute | いずれか | $DDEWindow、$DDETopic、$DDEData |
$MsgDDEInitAcknowledge | いずれか | $DDEWindow、$DDETopic、$DDEData |
$MsgDDEInitiate | いずれか | $DDEWindow、$DDETopic、$DDEData |
$MsgDDEPoke | いずれか | $DDEWindow、$DDETopic、$DDEData |
$MsgDDERequest | いずれか | $DDEWindow、$DDETopic |
$MsgDDETerminate | いずれか | $DDEWindow |
$MsgDDEUnAdvise | いずれか | $DDEWindow、$DDETopic |
$MsgDestroy | いずれか | ウィンドウからはなし |
$MsgEnterField | ダイアログ・ボックス | $FieldId、$FieldName |
$MsgExitField | ダイアログ・ボックス | $FieldId、$FieldName |
$MsgFocus | いずれか | $EventParm (1、ブール) |
$MsgHelp | ダイアログ・ボックス | $FieldId、$FieldName |
$MsgImage | イメージ・ウィンドウの親 | 1=イメージ ID |
$MsgInitialize | ダイアログ・ボックス | $FieldId、$FieldName、 3=旧値、4=新規値 |
$MsgLabel | ハイパーテキスト・ウィンドウ、ダイアログ・ボックス | 1=ボタン・テキスト、2=ボタン・ラベル |
$MsgMandField | ダイアログ・ボックス | $FieldId、$FieldName |
$MsgMouse | マウス・ゾーン | 1=ID、2=マウス活動、3=X、4=Y |
$MsgMenu | メニュー・バー ツールバー |
$MenuSelection (n*100 + m) またはユーザー定義。 $MenuId、2=ストリング $MenuSelection (1-99) またはユーザー定義。 |
$MsgPaint | 汎用 | なし |
$MsgPaintStatus | 状況バーが含まれているいずれかの ダイアログ・ボックスまたはウィンドウ |
なし |
$MsgPageChange | ノートブックが含まれているいずれかのダイアログ・ボックス | 1 = ページ変更が起こる前の現行ページの名前 2 = 現在現行ページであるページ (すなわち新規ページ) の名前 |
$MsgPageChangeRequest | ノートブックが含まれているいずれかのダイアログ・ボックス | 1 = ページ変更が起こる前の現行ページの名前 2 = 現在現行ページであるページ (すなわち新規ページ) の名前 |
$MsgScroll | 汎用ウィンドウ | 1=$WinHScroll/$WinVScroll、2=サムの位置 |
$MsgSelect | ダイアログ・ボックス | $FieldId、$FieldName、3=旧値、4=新規値 |
$MsgSize | 汎用、スクロール可能ウィンドウ | 1=ウィンドウの幅、2=ウィンドウの高さ |
$MsgTimer | いずれか | 1=タイマー ID |
$MsgUser+n | いずれか | 送信側および受信側に属する詳細。 |
各メッセージ定数は、実際には $Event ステートメントのパラメーターです。しかし、メッセージ定数の定義には、追加情報またはイベント・パラメーターが含まれています。たとえば、ユーザーがダイアログ・ボックスのあるボタンを選択すると、アプリケーションは、 $MsgButton メッセージ定数を受け取ります。このメッセージ定数に定義されたイベント・パラメーターは、選択されたボタンのフィールド名およびフィールド ID です。
$MsgButton メッセージを受け取ると、メッセージ同義語を使用して、イベント・パラメーターの値を入手することができます。同義語は、値を入手するためのショートカットとなります。たとえば、フィールド名の値を入手するには、同義語 $FieldName を使用してください。例:
Name of Field: = $FieldName;
イベント・パラメーターに定義された同義語がない場合には、$EventParm を使用して値を入手することができます。$EventParm を使用するには、イベント・パラメーターの番号および値のデータ・タイプを指定しなければなりません。たとえば、ダイアログ・ボックスで受信可能なメッセージの場合にはすべて、フィールド名はイベント・パラメーター 2 に含まれます。フィールド名のイベント・パラメーターの値を入手するには、次の表記を使用することができます。
$EventParm (2、string);
以下はその例です。
EVENT ExampleEvent (REF rec : MyRecord) IS
VARIABLES
width、height : INTEGER;
ACTIONS
WHEN $Event IS $MsgSize THEN
width := $EventParm(1、INTEGER);
height := $EventParm (2、INTEGER);
ELSWHEN...
END;
END;
可能であれば常に、同義語を使用して、イベント・パラメーターの値を入手してください。 「受信可能メッセージのテーブル」には、それぞれの受信可能メッセージについて、イベント・パラメーターおよび同義語がリストされています。
ヒント: すべてのダイアログ・ボックス・メッセージでは、同じ最初と 2 番目のイベント・パラメーターに同義語が定義されています。$FieldId (イベント・パラメーター 1) にはフィールド ID が含まれ、 $FieldName (イベント・パラメーター 2) にはフィールド名が含まれています
メッセージを送信する時には、イベント・パラメーターの順序が意味をもってきます。詳細については、「メッセージの送信: 転記および送信」を参照してください。 PostMessage および SendMessage ステートメントも参照してください。
この部分では、ダイアログ・ボックスから出され、イベント・ハンドラーが受け取ることができるメッセージについて説明します。
ヒント: DDE 会話に組み込まれているダイアログ・ボックスを起点とする受信可能メッセージは、この部分のトピック「DDE で受信可能なメッセージ」の下にリストされています。
次の表には、ダイアログ・ボックスを起点とし、イベント・ハンドラーが受け取ることができるメッセージだけがリストされています。
受信可能メッセージのテーブル (ダイアログ・ボックス・メッセージのみ)
$Event | ソース | パラメーター |
$MsgAccept | ダイアログ・ボックス | $FieldId、$FieldName |
$MsgButton | ダイアログ・ボックス | 1=ボタンのテキスト、2=ID のボタン |
$MsgCancel | ダイアログ・ボックス | $FieldId、$FieldName |
$MsgChar | ダイアログ・ボックス
|
$FieldId、$FieldName、3=KeyCode $KeyCode |
$MsgCreate | ダイアログ・ボックス | $FormFile、$FormName |
$MsgDestroy | いずれか | なし |
MsgDisplayImage | ダイアログ・ボックス | $ButtonText、$FieldId、$FieldName、$FileName、$ImageFile、$ProgramArguments、$SearchText、$SoundFile、 1=整数、2=ストリング、3=ストリング、4=ストリング |
$MsgEnterField | ダイアログ・ボックス | $FieldId、$FieldName |
$MsgExitField | ダイアログ・ボックス | $FieldId、$FieldName |
$MsgHelp | ダイアログ・ボックス | $FieldId、$FieldName |
$MsgImage | イメージの親 | 1=イメージ ID |
$MsgInitialize | ダイアログ・ボックス | $FieldId、$FieldName、3=oldValue、4=newValue |
$MsgLabel | ダイアログ・ボックス | 1=ボタン・テキスト、2=ボタン・ラベル |
$MsgListboxAccept | ダイアログ・ボックス | $FieldId、$FieldName、3=リスト・ボックスの場合はストリング、テーブルの場合は整数 |
$MsgMandField | ダイアログ・ボックス | $FieldId、$FieldName |
$MsgMouse | マウス・ゾーン | 1=ID、2=マウス活動、3=X、4=Y |
$MsgMenu | メニュー・バー
|
$MenuSelection (n*100 + m)
|
$MsgOpenFile | ダイアログ・ボックス | $ButtonText、$FieldId、$FieldName、$FileName、$ImageFile、$ProgramArguments、$SearchText、$SoundFile、 1=整数、2=ストリング、3=ストリング、4=ストリング |
$MsgPlaySound | ダイアログ・ボックス | $ButtonText、$FieldId、$FieldName、$FileName、$ImageFile、$ProgramArguments、$SearchText、$SoundFile、 1=整数、2=ストリング、3=ストリング、4=ストリング |
$MsgRunProgram | ダイアログ・ボックス | $ButtonText、$FieldId、$FieldName、$FileName、$ImageFile、$ProgramArguments、$SearchText、$SoundFile、 1=整数、2=ストリング、3=ストリング、4=ストリング |
$MsgSearch | ダイアログ・ボックス | $ButtonText、$FieldId、$FieldName、$FileName、$ImageFile、$ProgramArguments、$SearchText、$SoundFile、 1=整数、2=ストリング、3=ストリング、4=ストリング |
$MsgSelect | ダイアログ・ボックス | $FieldId、$FieldName、3=oldValue、4=newValue |
$MsgTimer | いずれか | 1=タイマー ID |
$MsgUser+n | いずれか | 送信側および受信側に属する詳細 |
ダイアログ・ボックスで受信可能メッセージには使用される幾つかの同義語があります。一番よく使用される同義語は、$FieldId と $FieldName です。
受信可能メッセージのテーブルに現れるその他の同義語は、対応するメッセージによって詳しく説明されています。同義語の使用の一般的説明については、このページのトピック「メッセージ・パラメーターおよび同義語 」を参照してください。
ここでは受信可能メッセージのテーブルにリストされた受信可能なダイアログ・ボックス・メッセージについて説明します。
受け取り側 | コントロールが含まれているいずれかのダイアログ・ボックス |
説明 | ダイアログ・ボックスで受諾イベントが生成されると、$MsgAccept が受け取られます。 |
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
応答 | 受け入れアクションは、イベント・グループから 0 が戻されると、取り消されることがあります。 |
注 | 受け入れイベントは、次の方法で起こることがあります。
OS/2 では、デフォルトのボタンとして定義されたボタンがなく、カーソルが Enter キーを解釈できるフィールドにない場合には、ユーザーが Enter キーを押すと、受け入れイベントが生成されます。 |
受け取り側 | いずれかのハイパーテキスト・ビューアー・ウィンドウ |
説明 | $MsgButton は、ハイパーテキスト・ビューアー・ウィンドウでタイプ (デフォルト・タイプ) の ID のボタンが選択された時に受け取られます。 注: ハイパーテキスト・ビューアー中のボタンは、別のエンティティー (別のファイル、既存のファイルの別のポイント、イメージ、サウンド・ファイル、または実行可能ファイル) へのリンクを表します。 |
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
受け取り側 | コントロールをもつダイアログ・ボックス。 |
説明 | $MsgCancel は、ダイアログ・ボックスが取り消しイベントを作成した時に受け取られます。ユーザーが「取消」ボタンを選択するか、あるいは Esc キーを押すと、取り消しイベントが生成されます。 |
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
応答 | 取り消しアクションは、イベント・グループからゼロを戻すことによって打ち切ることができます。 アクションが拒否されなかった場合には、ダイアログ・ボックスがクローズされます。 |
受け取り側 | いずれかのダイアログ・ボックス。 |
説明 | $MsgChar は、ユーザーがコントロールで処理できない文字をコントロールに入力した時に受け取られます。イベント・ハンドラーに渡される正確な文字は、フィールドによって変わります。一般的には、コントロール、Alt、および機能キーが受け取られます。 |
イベント・パラメーター | 次の 3 つのイベント・パラメーターがあります。
|
応答 | $KeyCode パラメーターは、ダイアログ・ボックスでは使用することができません。文字は、3 番目イベント・パラメーター (整数) 中で渡されます。 |
注 | F1 キー値は、ダイアログ・ボックスに渡されません。代わりに、F1 キーは、$MsgHelp を生成するか、あるいは既存のヘルプ・テキストを表示します。 |
受け取り側 | 作成中のプロセスのいずれかのダイアログ・ボックス。 |
説明 | $MsgCreate は、作成されると、ダイアログ・ボックスが受け取る最初のメッセージの 1 つです。 |
イベント・パラメーター | 4 つのイベント・パラメーターがあります。
|
応答 | イベント・グループからゼロが戻されると、ダイアログ・ボックスの作成が打ち切られます。 DlgCreate および DlgBox ステートメントは、「作成なし」のエラーを戻します。 |
注 | $MsgCreate が受け取られた時点では、ダイアログ・ボックスはまだ表示されていません。しかし、すでに次のことが起こっています。
詳細については、$MsgInitialize メッセージを参照してください。 |
受け取り側 | いずれかのダイアログ・ボックス。 |
説明 | このメッセージは、$MsgClose がダイアログ・ボックスに送られた時に生成されます。$MsgClose メッセージは、ユーザーがダイアログ・ボックスを受け入れるか、あるいはクローズした時に生成されます。 ダイアログ・ボックスに $MsgDestroy が受け取られると、そのウィンドウ・ハンドルは、破棄プロセスが完了するまでは、まだ有効になっています。ダイアログ・ボックスは、 $MsgDestroy メッセージから戻るまで、メッセージを受け取り続けます。 |
応答 | どの応答も無視されます。 |
注 | このメッセージは、すべてのコントロールおよび子ウィンドウが破棄された後でそのダイアログ・ボックスによって受け取られるはずです。 |
受け取り側 | いずれかのダイアログ・ボックス。 |
説明 | $MsgEnterField は、(タブ・キーを押すか、あるコントロールでマウスをクリックすることによって) 別のコントロールに入った時に生成されます。 これは、カーソルが新規コントロールに切り替わる前に受け取られます。フォーカスを受け取ったコントロールは、$MsgExitField メッセージを受け取ります。 |
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
応答 | カーソルが新しいコントロールに移動しないようにするには、このメッセージの処理中にイベント・グループからゼロを戻します。 |
注 | 新しいコントロールに入ることが拒否された場合には、カーソルは、ユーザーが今出たフィールドに戻ります。この結果、カーソルが変わると、別の $MsgEnterField メッセージが生成されることになります。 そのコントロールに戻ることも拒否された場合には、イベントが取り消され、どのコントロールにもカーソルはありません。 |
受け取り側 | いずれかのダイアログ・ボックス。 |
説明 | $MsgExitField は、(タブ・キーを押すか、別のコントロールでマウスをクリックすることによって) コントロールから出た時に生成されます。このメッセージは、カーソルがコントロールを出る前に受け取られます。 |
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
応答 | カーソルが移動しないようにするには、このメッセージの処理中にイベント・グループからゼロを戻します。 |
受け取り側 | いずれかのダイアログ・ボックス。 |
説明 | $MsgFocus は、ダイアログ・ボックスでキーボードのフォーカスがなくなった時に生成されます。 |
イベント・パラメーター | $EventParm (1、boolean) は、ダイアログ・ボックスでそのフォーカスがなくなるかどうかを示します。 |
受け取り側 | いずれかのダイアログ・ボックス。 |
説明 | $MsgHelp は、ユーザーが「ヘルプ」ボタンを選択したが、システムがダイアログ・ボックスまたはコントロールのヘルプを見つけることができない時に生成されます。 |
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
受け取り側 | いずれかのダイアログ・ボックス。 |
説明 | $MsgInitialize は、ダイアログ・ボックスの作成段階でのみ発生する $MsgSelect の特殊なバージョンです。 $MsgInitialize によって、作成中にダイアログ・ボックスのコントロールの値に対して特殊な処理を行うことができます。作成後、ダイアログ・ボックスのコントロールのすべてのイベントは、$MsgSelect メッセージとして受け取られます。 |
イベント・パラメーター | $MsgInitialize には、$MsgSelect などの 4 つのイベント・パラメーターがあります。
|
受け取り側 | いずれかのダイアログ・ボックス。 |
説明 | $MsgLabel は、ユーザーがハイパーテキスト・ビューアー・ウィンドウ中でタイプ LABEL のボタンを選択した時に生成されます。 |
イベント・パラメーター | $MsgLabel メッセージには、次の 2 つのイベント・パラメーターがあります。
|
受け取り側 | いずれかのダイアログ・ボックス |
説明 | $MsgListboxAccept は、リスト・ボックス中でダブルクリックされたアイテムを報告します。 |
イベント・パラメーター | 次の 3 つのイベント・パラメーターがあります。
|
応答 | このメッセージから出ると $MsgAccept が防止されます。 |
受け取り側 | いずれかのダイアログ・ボックス |
説明 | $MsgMandField は、ダイアログ・ボックスによって受け入れアクションが受け取られ、必須フィールドに値がない時に受け取られます。 |
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
応答 | FALSE が戻された場合には、システムはメッセージを処理することができません。 このメッセージが未処理の場合、あるいはイベント・グループがデフォルト値 (1) を戻した場合には、システムは、必須値が欠落していることおよび受け入れアクションが取り消されたことをユーザーに告げるメッセージ・ボックスを表示します。 ユーザーがメッセージ・ボックスをクローズすると、カーソルがダイアログ・ボックス中の最初の空の必須コントロールに移動します。この移動によって、$MsgExitField、 $MsgSelect、および $MsgEnterField メッセージが生成されることがあります。受け入れアクションは打ち切られます。 イベント・グループが 1 以外のどの値を戻した場合にも、システムはアクションを実行しません。アプリケーションがカーソルを位置付け、$MsgAccept を拒否しなければなりません。 |
受け取り側 | いずれかのダイアログ・ボックス。 |
説明 | $MsgMenu は、ユーザーがダイアログ・ボックス中のメニュー・バーまたはツールバーから選択を行った時に受け取られます。 |
イベント・パラメーター | 疑似パラメーター $MenuSelection には、選択されたメニュー・アイテムの指標があります。
ツールバーから選択を行うと、アイコンの位置に基づいて 1〜99 の値が生成されます。メニュー・バーから選択を行うと、次の公式に基づいて値が生成されます。n * 100 + m n はメイン・メニュー・バーでのアクティブ選択の位置で、m はサブメニューでの選択の位置です。 |
注 | このメッセージに伴う現行コントロールの名前または ID がありません。また前のバージョンでは、メニュー選択をシミュレートすることはできません。これはもうサポートされていません。 |
$MsgPaintStatus メッセージが生成されると、そのつど状況バーの現行テキスト位置が 1,1 にリセットされます。
受け取り側 | ノートブックをもついずれかのダイアログ・ボックス。 |
説明 | $MsgPageChange は、ノートブックの作成 (初期ページの設定) 時と、現在ページが変わった時に必ずノートブック・イベント・ハンドラーによって受信されます。 イベントのパラメーターは、旧ページと新ページを指定します。 |
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
注 | このメッセージは、ノートブックが最初に表示される時にも受け取られます ($MsgCreate の後)。 この場合には、最初のパラメーターは $Unknown に設定され、2 番目のパラメーターは初期ページの名前です。 |
受け取り側 | ノートブックをもついずれかのダイアログ・ボックス。 |
説明 | $MsgPageChangeRequest は、ページの変更前に転送されます。 (ゼロで終了すると、ページの変更ができなくなります。) イベントのパラメーターは、旧ページと新ページを指定します。 |
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
受け取り側 | いずれかのダイアログ・ボックス。 |
説明 | コントロールの値の変更時にはいつでも $MsgSelect を受け取ります。 このメッセージの受け取り時に、インスタンス・データはコントロールの新しい値を反映するよう更新されます。 $MsgSelect の処理中に、コントロールの実際の値が決定することはありません。Windows では、 $MsgSelect の呼び出し前にインスタンス・データがフィールドの実際の値で更新されるので、これが実行されます。 OS/2 では、$MsgSelect の呼び出し後にインスタンス・データがフィールドの実際の値で更新されます。 |
イベント・パラメーター | $MsgSelect メッセージには、次の 4 つのイベント・パラメーターがあります。
|
応答 | 新規値が残されるよう、値 1 を戻します。結果のメッセージは、 $MsgExitField および $MsgEnterField です。 |
注 | $MsgSelect メッセージは、いくつかの方法で生成されます。
イベント・パラメーター 3 に入る値のデータ・タイプは、これが結合されたインスタンス・データに基づい ています。ID が結合されていない場合には、データは $Unknown となります。 |
受け取り側 | いずれかのダイアログ・ボックス。 |
説明 | $MsgTimer は、タイマー・イベントに対する応答として受け取られます。 |
イベント・パラメーター | イベント・パラメーター (整数) には、$MsgStartTimer を介して渡されたタイマーの ID が含まれています。 |
注 | $MsgTimer を受信するには、ウィンドウに設定されたタイマーがなければなりません。 |
受け取り側 | イベント・ハンドラーをもついずれかのダイアログ・ボックス。 |
説明 | これは、ユーザー定義メッセージ定数です。 |
イベント・パラメーター | どのイベント・パラメーターでも、ユーザー定義メッセージによって渡すことができます。 SendMessage ステートメントに追加のパラメーターを割り当てることができる場合には、そのパラメーターは、イベント・ハンドラー中で割り当てることができます。 受信側ウィンドウは、メッセージに有効なパラメーターを認識していなければなりません。 |
注 | すべてのユーザー定義メッセージは、$MsgUser+n という値をもっていなければなりません。n は、新規メッセージ定数に割り当てるために選択する任意の数です。 |
この部分には、ウィンドウで受信可能なメッセージが含まれています。
受信可能メッセージのテーブルでは、$Event 欄にリストされたアイテムは、メッセージ定数を表します。
「ソース」欄にリストされたアイテムは、メッセージを送ったアプリケーション・コンポーネントのタイプ (ダイアログ・ボックスまたはウィンドウ) を表します。
この欄の項目は、メッセージの種別を決定します。たとえば、メッセージ $MsgCreate にソース (ダイアログ・ボックス) があると、そのメッセージは、ダイアログ・ボックスで受信可能なメッセージです。このメッセージについての詳細は、「 ダイアログで受信可能なメッセージ」にあります。
「ソース」欄にリストされたアイテムの一部は省略されています。例:
「パラメーター」欄には、メッセージ定数に定義されたイベント・パラメーターがリストされます。同義語値は $ で始まります。(詳細については、「ウィンドウ同義語」を参照してください。)
受信可能メッセージのテーブル (ウィンドウ・メッセージのみ)
$Event | ソース | パラメーター |
$MsgActivate | 汎用ウィンドウ、スクロール・ウィンドウ | 1=アクティブ化状況 |
$MsgButton | ハイパーテキスト・ウィンドウ、ダイアログ・ボックス | 1=ボタンのテキスト、2=ボタンの ID |
$MsgChar | いずれかのウィンドウ | $KeyCode |
$MsgCreate | いずれかのウィンドウ | ボックスにのみ適用 |
$MsgDestroy | いずれかのウィンドウ | なし |
$MsgImage | イメージの親 | 1=イメージ ID |
$MsgLabel | ハイパーテキスト・ウィンドウ、ダイアログ・ボックス | 1=ボタン・テキスト、2=ボタン・ラベル |
$MsgMouse | マウス・ゾーン | 1=ID、2=マウス活動、3=X、4=Y |
$MsgMenu | メニュー・バー ツールバー |
$MenuSelection (n*100 + m) $MenuSelection (1-99) |
$MsgPaint | 汎用 | なし |
$MsgPaintStatus | 状況バーをもついずれかのウィンドウまたはダイアログ・ボックス | なし |
$MsgScroll | 汎用ウィンドウ | 2=サム位置、1=$WinHScroll / $WinVScroll |
$MsgSize | 汎用、スクロール可能ウィンドウ | 1=ウィンドウの幅、2=ウィンドウの高さ |
$MsgTimer | いずれか | 1=タイマー ID |
$MsgUser+n | いずれか | 送信側および受信側に属する詳細 |
受信可能メッセージ (ウィンドウ・メッセージのみ) のテーブルに現れる同義語は、その関連のメッセージと一緒にここで説明します。同義語の使用の一般的な説明については、「 メッセージ・パラメーターおよび同義語 」を参照してください。
受け取り側 | ウィンドウまたはスクロール・ウィンドウ |
説明 | $MsgActivate は、ウィンドウまたはスクロール・ウィンドウがアクティブ化されるか、非アクティブ化される時に受け取られます。 |
イベント・パラメーター | 1 つのイベント・パラメーターがあります。
|
応答 | ウィンドウがアクティブ化されると、そのウィンドウにフォーカスがおかれます。 ウィンドウが非アクティブになると、フォーカスは、アクティブ化されたウィンドウに移ります。 システム構成によっては、ウィンドウのカラーは、アクティブ化または非アクティブ化を反映して変わることがあります。 |
受け取り側 | ハイパーテキスト・ビューアー・ウィンドウ。 |
説明 | $MsgButton は、ハイパーテキスト・ビューアー・ウィンドウでタイプ (デフォルト・タイプ) の ID のボタンが選択された時に受け取られます。 注: ハイパーテキスト・ビューアー中のボタン は、別のエンティティー (別のファイル、既存のファイルの別のポイント、イメージ、サウンド・ファイル、または実行可能ファイル) へのリンクを表します。 |
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
応答 | ボタン ID が 0 で、イベント・ハンドラーが 0 を戻した場合には、ハイパーテキスト・ビューアー・ウィンドウでボタン・テキストが変更され、アクティブ・ファイルから一致するものが検索されます。一致が見つかると、ファイルがスクロールされ、その一致する行がビューアーの一番上におかれます。 |
受け取り側 | いずれかのダイアログ・ボックス。 |
説明 | $MsgChar は、アクティブ・ウィンドウで処理されない文字をユーザーがキーボードから入力すると必ず受け取られます。 |
イベント・パラメーター | パラメーター $KeyCode は、その文字にアクセスするために使用することができます。その文字は、印刷可能文字である場合も、標準 $Key 定義の文字の 1 つである場合もあります。(使用可能なキー・コードの完全なリストについては、$KeyCode を参照してください。) |
受け取り側 | いずれかのウィンドウまたはダイアログ・ボックス。 |
説明 | このメッセージは、ウィンドウまたはダイアログ・ボックスのコントロールが初期化された後に受け取られます。このメッセージが受け取られると、ウィンドウまたはダイアログ・ボックスがペイントされます。 |
受け取り側 | いずれかのウィンドウ。 |
説明 | $MsgDestroy は、ウィンドウが破棄される前にウィンドウで受け取られる最後のメッセージです (ただしウィンドウがアプリケーションの終了の一部として破棄される場合は除きます)。 |
注 | $MsgDestroy メッセージが受け取られる時に、そのすべての子ウィンドウは、破棄を明示されていない限り存在しているかもしれません。 |
受け取り側 | いずれかのイメージ・ウィンドウ。 |
説明 | $MsgImage は、ユーザーがマウスでイメージをクリックしたことを親ウィンドウに通知するためにイメージ・ウィンドウによって送られます。 |
イベント・パラメーター | イベント・パラメーター (整数) には、選択されたイメージの ID があります。 |
受け取り側 | ハイパーテキスト・ビューアー・ウィンドウ。 |
説明 | $MsgLabel は、ハイパーテキスト・ビューアー・ウィンドウでタイプ LABEL のボタンが選択された時に受け取られます。 |
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
受け取り側 | メニュー・バーまたはツールバーをもついずれかのダイアログ・ボックス。 |
説明 | $MsgMenu は、メニュー・バーまたはツールバーから選択が行われた時に受け取られます。 |
イベント・パラメーター | $MenuSelection には、選択されたメニュー・アイテムの ID が含まれています。 |
注 | 選択されたメニュー・アイテムの ID は、メニュー・バーをもついずれのウィンドウにも送ることができます。これは、MenuSelection パラメーターに含まれる指標でメニュー・アイテムを選択するユーザーのアクションをシミュレートします。 ツールバーから選択を行うと、ツールバー上のアイコンの位置に基づいて 1〜99 の値が生成されます。 メニュー・バーから選択を行うと、次の公式に基づいて値が生成されます。 n * 100 + m n はメイン・メニュー・バーでのアクティブ選択の位置で、m はサブメニューでの選択の位置です。 |
受け取り側 | いずれかのウィンドウ。 |
説明 | $MsgMouse は、WinCreateMouseRect ステートメントによって定義されたマウス・ゾーンにマウス活動がある時に受け取られます。 |
イベント・パラメーター | $MsgMouse には次のイベント・パラメーターがあります。
|
注 | WinSetMousePointer は、$MsgMouse が処理されるたびに呼び出さなければなりません。 定義されたマウス活動には次のものが含まれます。
詳細については、 WinCreateMouseRect を参照してください |
受け取り側 | いずれかの汎用ウィンドウ。 |
説明 | $MsgPaint は、ウィンドウのすべてまたは一部が再ペイントを必要する時に受け取られます。 |
受け取り側 | いずれかのウィンドウ。 |
説明 | $MsgScroll は、ユーザーが水平または垂直スクロール・バー上でスクロール・ボックスを移動した時に受け取られます。 |
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
受け取り側 | いずれかの汎用ウィンドウまたはスクロール・バーをもつウィンドウ。 |
説明 | これは、ウィンドウのサイズを設定します。 |
受け取り側 | いずれかのウィンドウ。 |
説明 | $MsgTimer は、タイマー・イベントに対する応答として受け取られます。 |
イベント・パラメーター | イベント・パラメーター (整数) には、$MsgStartTimer に渡されるタイマーの ID が含まれています。 |
注 | ウィンドウには、$MsgTimer を受け取るためのタイマー設定がなければなりません。 |
受け取り側 | イベント関数をもついずれかのウィンドウ。 |
説明 | これは、ユーザー定義メッセージ定数です。 |
イベント・パラメーター | どのイベント・パラメーターでも、ユーザー定義メッセージによって渡すことができます。 SendMessage ステートメントに追加のパラメーターを割り当てることができる場合には、そのパラメーターは、イベント関数中で割り当てることができます。 |
注 | すべてのユーザー定義メッセージには次の値が必要です。 $MsgUser+n n は、新規メッセージ定数に割り当てるために選択した任意の数です。 |
この部分には、ダイアログ・ボックスに定義されたイベント・ハンドラーまたは DDE アプリケーションで実行中のアプリケーションによって受け取ることができるメッセージが含まれています。
$Event 欄にリストされたアイテムは、メッセージ定数を表します。
「ソース」欄にリストされたアイテムは、メッセージを送ったアプリケーション・コンポーネントのタイプ (ダイアログ・ボックスまたはウィンドウ) を表します。
この欄の項目は、メッセージの種別を決定します。たとえば、メッセージ $MsgCreate にソース (ダイアログ・ボックス) があると、そのメッセージは、ダイアログ・ボックスで受信可能なメッセージです。このメッセージについての詳細は、「 ダイアログで受信可能なメッセージ」にあります。
「ソース」欄では、いずれか は、実行中のアプリケーション中のいずれかのダイアログ・ボックスまたはウィンドウ・アイテムを表します。
「パラメーター」欄には、メッセージ定数に定義されたイベント・パラメーターがリストされます。同義語値は $ で始まります。詳細については、「DDE 同義語」を参照してください。
次の表には、ダイアログ・ボックスに定義されたイベント・ハンドラーまたは DDE アプリケーションで実行中のアプリケーションによって受け取ることができるメッセージがリストされています。
受信可能メッセージのテーブル (DDE メッセージのみ)
$Event | ソース | パラメーター |
$MsgDDEAcknowledge | いずれか | $DDEWindow、$DDEStatus |
$MsgDDEAdvise | いずれか | $DDEWindow、$DDETopic |
$MsgDDEData | いずれか | $DDEWindow、$DDETopic、$DDEData |
$MsgDDEExecute | いずれか | $DDEWindow、$DDETopic、$DDEData |
$MsgDDEInitAcknowledge | いずれか | $DDEWindow、$DDETopic、$DDEData |
$MsgDDEInitiate | いずれか | $DDEWindow、$DDETopic、$DDEData |
$MsgDDEPoke | いずれか | $DDEWindow、$DDETopic、$DDEData |
$MsgDDERequest | いずれか | $DDEWindow、$DDETopic |
$MsgDDETerminate | いずれか | $DDEWindow |
$MsgDDEUnAdvise | いずれか | $DDEWindow、$DDETopic |
ヒント: DDE メッセージが受け取られると、必ず $MsgDDEAcknowledge メッセージが戻されるはずです $MsgDDEAcknowledge が戻されない場合には、メモリーの消失につながる可能性があります。
ヒント: $MsgDDExxx が受け取られた時に肯定応答を送りたい場合には、EXIT ($DDEAck) とするだけでかまいません。 否定応答を送りたい場合には、EXIT(0) とするだけでかまいません。
DDE メッセージで使用可能な特殊な同義語グループがあります。これらの同義語は次の通りです。
これらのフラグを使用する時には、BitAnd ステートメントで構文解析してください。詳細については、BitAnd を参照してください
以下のテーブルは、DDE アプリケーション間で受け渡しされるメッセージを説明するために使用される用語を示したものです。
用語 | 定義 |
会話 | DDE セッションにおける 2 つのアプリケーション間の情報の交換。 |
パートナー | DDE 会話のメンバー。 |
クライアント | 会話で別のアプリケーションからの情報を要求するパートナー。 |
サーバー | クライアントの DDE パートナーに要求された情報を提供するパートナー。 |
アプリケーション / トピックの対 | DDE クライアントである場合には、これは、DDE サーバーとの通信リンクを確立するために DDE サーバーに送られる情報です。 あるいは DDE サーバーである場合には、これは、サービスできるアプリケーションとトピックの組み合わせです。 |
受け取り側 | 一方の DDE パートナー (クライアントまたはサーバー)。 |
説明 | このメッセージは、要求されたアクションの成否を DDE パートナーに通知します。 $MsgDDEAcknowledge は、次のいずれかのメッセージに対する応答として送られるはずです。
|
イベント・パラメーター (Windows) |
次のイベント・パラメーターは、Windows で DDEExecute ステートメントとともに使用されます。
次のイベント・パラメーターは、Windows で他のすべての DDE メッセージとともに使用されます。
|
イベント・パラメーター (OS/2) | 次のイベント・パラメーターは、OS/2 で $DDEExecute とともに使用されます。
次のイベント・パラメーターは、OS/2 で他のすべての DDE メッセージとともに使用されます。
|
注 | $DDEData が受け取られたメッセージである場合には、実際のメッセージ・データの代わりにこれを送ることができます。 |
受け取り側 | いずれかの DDE サーバー。 |
説明 | $DDETopic に含まれるトピックについて連続更新を要求します。 これは、テキストだけのメッセージです。 |
イベント・パラメーター (Windows) | Windows では次のイベント・パラメーターが使用されます。
|
イベント・パラメーター (OS/2) | 次のイベント・パラメーターは、OS/2 で使用されます。
|
応答 | アプリケーションは、データが変わるたびに DDEData を実行しなければなりません。 |
受け取り側 | いずれかの DDE クライアント。 |
説明 | このメッセージは、次の 2 つの場合に送られます。
|
イベント・パラメーター | 可能な幾つかのイベント・パラメーターがあります。
|
終了値 | このデータが使用されると、$DDEAck が戻されます。例: EXIT ($DDEAck) |
注 | データが DDEAdvise に対する応答として送られた場合には、 $DDEStatus フラグが $DDENoData に設定されることがあります。この場合には、アプリケーションは、DDERequest を出して、実際のデータを検索します。 |
受け取り側 | いずれかの DDE サーバー。 |
説明 | このメッセージは、何かのアクションを取るようにサーバーに指示するためにサーバーに送られます。 |
イベント・パラメーター (Windows) | 次のイベント・パラメーターは、Windows で使用されます。
|
イベント・パラメーター (OS/2) | 次のイベント・パラメーターは、OS/2 で使用されます。
|
終了値 | コマンドが完了した場合には、$DDEAck が送られるはずです。 |
注 | コマンド・ストリングを定義するのは、パートナーの責任です。 |
受け取り側 | いずれかの DDE サーバー。 |
説明 | $MsgDDEInitAcknowledge は、DDEInitiate 関数に対する応答として受け取られます。 DDEInitiate に渡されたアプリケーションまたはトピックの対に一致するすべてのアプリケーションは、次のアイテムとともに $MsgDDEInitAcknowledge を送ります。
|
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
注 | 一致するアプリケーションまたはトピックの対ごとに 1 つの $MsgDDEInitAcknowledge メッセージが送られます。 たとえば、トピック・ストリングがブランクとなるように指定されている場合には、サーバーはサポートするトピックごとに $MsgDDEInitAcknowledge を送ります。 |
受け取り側 | 可能ないずれかの DDE サーバー・アプリケーション。 |
説明 | $MsgDDEInitiate は、アプリケーションが受信側アプリケーションに DDE サーバーとなるように要求した時に受け取られます。受信側アプリケーションは、 $DDEData のアプリケーション名を検査して、それが目標の宛先であるかどうかを判別しなければなりません。 アプリケーションが目標の宛先である場合には、アプリケーションは、$DDETopic の値を検査して、要求を満たすことができるかどうかを判別しなければなりません。$DDEData および $DDETopic の長さがゼロのストリングは、いずれかのアプリケーションとトピックに一致するものとして受け入れられます。 |
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
応答 | DDERespond を呼び出します。必要に応じて各トピックおよびアプリケーション名を渡してください。 |
注 | $MsgDDEInitiate メッセージを処理している時には、DlgBox、WinMessageBox、または WinWait を使用しないでください。 $MsgDDEInitiate はアプリケーションにメッセージを同報通信して、応答が戻されるまでメッセージ待ち行列をロックします。その間、これらのステートメントは、同様にメッセージ待ち行列からの応答を待機しているそれぞれイベント・ハンドラーを始動します。 これらのステートメントによって、他のアプリケーションは、メッセージ待ち行列にメッセージを送ることができなくなります。この結果はデッドロックとなり、実際上はユーザー・インターフェースをロックしてしまいます。 |
受け取り側 | いずれかの DDE サーバー。 |
説明 | これには、非送信請求データ (通知メッセージまたは要求メッセージに対する応答として送られないデータ) が含まれています。 |
イベント・パラメーター | 幾つかのイベント・パラメーターがあります。
|
応答 | データが使用または処理された場合には、受信側アプリケーションは、肯定応答 ($DDEAck) を送らなければなりません。 |
受け取り側 | いずれかの DDE サーバー。 |
説明 | これは、トピックに関するデータの要求です。 |
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
応答 | DDEData を呼び出します。要求された情報を渡します。 |
終了値 | データが戻されている場合には、$DDEAck で終了します。 |
受け取り側 | 一方の DDE パートナー (クライアントまたはサーバー)。 |
説明 | 会話を終了します。一方のパートナーがいつでも $MsgDDETerminate を送るかもしれません。 |
イベント・パラメーター | 有効な状況フラグのリストについては、「DDE 同義語」のトピックを参照してください。 |
応答 | DDETerminate を呼び出した場合には、応答を行ってはいけません。 DDETerminate を呼び出さなかった場合には、呼び出しを受けるはずです。 |
受け取り側 | いずれかの DDE サーバー。 |
説明 | これにより、一定のクライアントまたはトピックの対に対する通知要求が取り消されます。これは、テキストだけのメッセージです。 |
イベント・パラメーター (Windows) | Windows では次のイベント・パラメーターが使用されます。
|
イベント・パラメーター (OS/2) | OS/2 では次のイベント・パラメーターが使用されます。
|
注 | トピック・ストリングがブランクの場合には、クライアントのすべての通知を取り消さなければなりません。 |
この項では、次のトピックについて説明します。
TSD Script プログラムは、アプリケーションの他のパーツまたはウィンドウ・システムにメッセージを送信することができます。どのウィンドウまたはダイアログ・ボックスでも、適切であればどのような送信可能メッセージでも送信または転記することができます。
送信可能メッセージのテーブルには、ウィンドウ・ハンドルに送信または転記できるイベント・メッセージがリストされています。
$Event 欄にリストされたアイテムは、メッセージ定数を表します。
「受信側」欄にリストされたアイテムは、メッセージを受け取るアプリケーション・コンポーネントのタイプ (ダイアログ・ボックスまたはウィンドウ) を表します。
「受信側」欄にリストされたアイテムの一部は省略されています。 例:
「転記 / 送信」欄は、メッセージが PostMessage ステートメントによって送られるのか、 SendMessage ステートメントによって送られるのか、その両方によって送られるのかを示します。アイテムが送信される場合には、トピック「送信メッセージ」に詳しい説明があります。メッセージが転記される場合には、トピック「転記メッセージ」に詳しい説明があります。
「パラメーター」欄には、メッセージのパラメーターが含まれています。
ヒント: パラメーターはリストされた順序で使用されなければならないので、パラメーターの順序が重要になります
次の表には、ウィンドウ・ハンドルに送信可能なイベント・メッセージ (SendMessage ステートメントで送信) と転記可能なイベント・メッセージ (PostMessage ステートメントで送信) がリストされています。
$Event | 受信側 | 転記 / 送信 | パラメーター |
$MsgActivate | フレームをもついずれかのウィンドウ | S、P | なし |
$MsgChar | いずれかのダイアログ・ボックス | S、P | 1=フィールド ID、2=フィールド名、3=キー・コード |
$MsgClockSet | クロック・ウィンドウ | S | 時刻 |
$MsgClose | いずれか | S | なし |
$MsgDisplayImage | ハイパーテキスト・ビューアー・ウィンドウ | S、P | 1=ファイル名、2=タイトル、3=スタイル |
$MsgEnable | いずれか | S、P | enableState |
$MsgMaximize | フレームをもついずれかのダイアログ・ボックスまたはウィンドウ | S | なし |
$MsgMenu | メニュー・バーをもついずれかのウィンドウまたはダイアログ・ボックス | S、P | menuSelection、2=ストリング |
$MsgMinimize | フレームをもついずれかのウィンドウまたはダイアログ・ボックス | S | なし |
$MsgMove | フレームをもついずれかのウィンドウまたはダイアログ・ボックス | S | 1=x、2=y |
$MsgOpenFile | ハイパーテキスト・ビューアー・ウィンドウ | S、P | 1=ファイル名、2=タイトル、3=スタイル |
$MsgPaint | いずれか | S、P | なし |
$MsgPaintStatus | 状況バーをもついずれかのウィンドウまたはダイアログ・ボックス | P | なし |
$MsgPlaySound | ハイパーテキスト・ビューアー・ウィンドウ | S、P | 1=ファイル名、2=タイトル、3=スタイル |
$MsgReadOnly | ダイアログ・ボックス | S | writeState |
$MsgRestore | フレームをもついずれかのウィンドウまたはダイアログ・ボックス | S | なし |
$MsgSearch | ハイパーテキスト・ビューアー・ウィンドウ | S、P | searchText |
$MsgSetIcon | ウィンドウ | S | iconFile |
$MsgSetImage | イメージ・ウィンドウ ダイアログ・ボックス、スクロール可能ウィンドウ |
S S |
imageFile ウィンドウ ID |
$MsgSetSize | フレームをもついずれかのウィンドウまたはダイアログ・ボックス | S | 1=幅、2=高さ |
$MsgSetTitle | フレームをもついずれかのウィンドウまたはダイアログ・ボックス | S | タイトル |
$MsgShow | いずれか | S | visibilityState |
$MsgSize | 汎用、スクロール可能ウィンドウ | S | 1=幅、2=高さ |
$MsgStartTimer | イベント・ハンドラーをもついずれかのウィンドウまたはダイアログ・ボックス | S | 1=タイマー ID、2=間隔 重要: 間隔は 65535 を超えることができません。 |
$MsgStopTimer | イベント・ハンドラーをもついずれかのウィンドウまたはダイアログ・ボックス | S | タイマー ID |
$MsgTimer | いずれかのダイアログ・ボックス | S、P | タイマー ID |
$MsgUpdate | ハイパーテキスト・ビューアー・ウィンドウ | S、P | なし |
$MsgUser+n | いずれか | S、P | 送信側および受信側に属する詳細 |
次の表では、同様の送信可能イベント・メッセージがリストされ、各メッセージの効果について説明します。
イベント | 説明 |
$MsgActivate | 受信側ウィンドウをアクティブ化します |
$MsgClockSet | クロックを新規時刻に設定します |
$MsgClose | ウィンドウを破棄します |
$MsgDisplayImage | ハイパーテキスト・ビューアー・ウィンドウに新規イメージ・ビューアーを作成します |
$MsgEnable | ウィンドウの使用可能状態を設定します |
$MsgMaximize | ターゲット・ウィンドウを最大化します |
$MsgMenu | メニュー・アイテムのユーザー選択をシミュレートします |
$MsgMinimize | ターゲット・ウィンドウをデスクトップ上のアイコンに最小化します |
$MsgMove | ターゲット・ウィンドウの左上隅を移動します |
$MsgOpenFile | ファイルを表示するために新規ハイパーテキスト・ビューアー・ウィンドウを作成します |
$MsgPaint | ターゲット・ウィンドウに自身を再ペイントさせます |
$MsgPaintStatus | ターゲット・ウィンドウにその状況バーを再ペイントさせます |
$MsgPlaySound | オーディオ・ファイルを再生するために新規ハイパーテキスト・ビューアー・ウィンドウを作成します |
$MsgReadOnly | 一定のコントロールを読み取り専用に設定するようにダイアログ・ボックスに指示します |
$MsgRestore | ターゲットをそのサイズに復元させます |
$MsgSearch | 行を検索して、それをハイパーテキスト・ビューアー・ウィンドウの最上部に移動するようにハイパーテキスト・ビューアー・ウィンドウに指示します |
$MsgSetIcon | 最小化される時のウィンドウのアイコンを設定します |
$MsgSetImage | イメージをイメージ・ウィンドウに表示されるように設定します |
$MsgSetSize | ウィンドウの全体のサイズを設定します |
$MsgSetTitle | ウィンドウのタイトル・バーの内容を設定します |
$MsgShow | ウィンドウの可視属性を設定します |
$MsgSize | ウィンドウの作業域のサイズを設定します |
$MsgStartTimer | ウィンドウのタイマーを開始します |
$MsgStopTimer | タイマーを停止します |
$MsgTimer | ウィンドウに送られるタイマー・メッセージをシミュレートします |
$MsgUpdate | コントロールに表示された値をインスタンス・レコードのデータで更新するようにダイアログ・ボックスに指示します。 このメッセージは、ダイアログ・ボックスにのみ送信または転記することができます。 このメッセージは、コントロールに表示された値をインスタンス・レコードのデータで更新するようにダイアログ・ボックスに強制します。 このメッセージは、1 つのダイアログ・ボックスの複数のフィールドを 1 つのコマンドで更新するのに有効な方法です (複数 DlgSetFieldValue 関数呼び出しと対比)。レコードの値を更新して、このメッセージをダイアログ・ボックスに送ります。 |
$MsgUser+n | ウィンドウにプログラム定義メッセージを送ります |
TSD Script は、メッセージおよびデータを送信するために SendMessage と PostMessage という 2 つの組み込みルーチンを提供しています。メッセージの送信と転記の相違は、SendMessage は、呼び出されたイベント・ハンドラーがメッセージの処理を完了するのを待機するという点です。 PostMessage は、イベント待ち行列に情報を入れ、これによって転記ルーチンがメッセージの完了を待機せずに続行することができます。
あるタイプのメッセージは、一部のウィンドウに転記することができません。
メッセージを送信する時には、SendMessage ステートメントか PostMessage ステートメントか、適切な方を使用します。これらのステートメントの構文は、基本的には同じです。
SendMessage (VAL whdl: WINDOW,
VAL message: INTEGER,
[VAL または REF messageParm: ANY...]):
INTEGER;
詳細については、SendMessage または PostMessage を参照してください
後に続くトピックでは、送信可能メッセージは、送信 可能なもの (SendMessage で送信) と 転記 可能なもの (PostMessage) 別に編成されています。
次のメッセージは、SendMessage ステートメントによってウィンドウ・ハンドルに送信することができます。
送信先 | このメッセージは、フレームをもついずれのウィンドウにも送信することができます |
説明 | 受信側ウィンドウをアクティブ・ウィンドウにします |
送信先 | このメッセージは、クロックをもついずれのウィンドウにも送信することができます |
説明 | クロックを新規時刻に設定します |
イベント・パラメーター | イベント・パラメーター (時刻) には、クロックの新しい時刻が含まれています。 |
注 | WinCreateClock を参照してください |
送信先 | このメッセージは、いずれのウィンドウにも送信することができます |
説明 | ウィンドウを破棄します |
送信先 | このメッセージは、ハイパーテキスト・ビューアー・ウィンドウに送信することができます |
説明 | 新規イメージ・ビューアーを作成して、指定されたファイルを表示します。 |
イベント・パラメーター | 次の 3 つのイベント・パラメーターがあります。 最初のイベント・パラメーターには、ハイパーテキスト・ビューアー・ウィンドウに現れるファイルの名前 (ストリング) が含まれています 2 番目のイベント・パラメーターには、タイトル・バーに現れるタイトル (ストリング) が含まれています。 3 番目のイベント・パラメーターには、BitOr ステートメントで結合された次のスタイルのいずれかの組み合わせからなるスタイルが含まれています。
|
送信先 | これは、いずれのウィンドウにも送ることができます。 |
説明 | これはウィンドウの使用可能状態を設定します |
イベント・パラメーター | イベント・パラメーターには、TRUE または FALSE が含まれ、ウィンドウの使用可能状態を表します。
|
送信先 | このメッセージは、フレームをもついずれのウィンドウにも送信することができます |
説明 | これは、画面全体を占めるように受信側ウィンドウを最大化します。 |
送信先 | このメッセージは、メニュー・バーをもついずれのウィンドウにも送信することができます |
説明 | 指定されたメニュー・オプションを選択するユーザーをシミュレートします |
イベント・パラメーター | イベント・パラメーターには、選択されたメニュー・アイテムの値 (整数) が含まれています。この値は、次の公式を使用して計算されます。n * 100 + m n はメイン・メニュー・バーでのアクティブ選択の位置で、m はサブメニューでの選択の位置です。 |
注 | 詳細については、 WinSetMenuBar を参照してください |
送信先 | このメッセージは、フレームをもついずれのウィンドウにも送信することができます |
説明 | 受信側ウィンドウをアイコンに最小化します |
送信先 | このメッセージは、いずれのウィンドウにも送信することができます |
説明 | ウィンドウ・フレームの左上隅を指定された位置に移動します |
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
送信先 | このメッセージは、ハイパーテキスト・ビューアー・ウィンドウに送信することができます |
説明 | 新規ファイル・ビューアーを作成して、指定されたファイルを表示します。 |
イベント・パラメーター | 次の 3 つのイベント・パラメーターがあります。
|
送信先 | このメッセージは、ハイパーテキスト・ビューアー・ウィンドウに送信することができます。 |
説明 | 新規オーディオ・プレイヤーを作成して、指定されたファイルを再生します。 |
イベント・パラメーター | 次の 3 つのイベント・パラメーターがあります。
|
送信先 | このメッセージは、TSD Script ダイアログ・ボックスに送ることができます。 |
説明 | これはダイアログ・ボックスの読み取り専用フラグを設定または消去します。 |
イベント・パラメーター | イベント・パラメーターには、TRUE または FALSE のいずれかが含まれています。
|
注 | 詳細については、DlgBox を参照してください |
送信先 | このメッセージは、フレームをもついずれのウィンドウにも送信することができます |
説明 | 受信側ウィンドウを元のサイズ (最小化または最大化の前のサイズ) に復元します。 |
送信先 | このメッセージは、ハイパーテキスト・ビューアー・ウィンドウに送信することができます。 |
説明 | アクティブのサブハイパーテキスト・ビューアー・ウィンドウ中で指定されたテキストを検索します。 一致が見つかると、一致した行がビューアーの一番上に位置付けられます。 |
イベント・パラメーター | イベント・パラメーターには、ハイパーテキスト・ビューアー・ウィンドウ中で検索するストリングが含まれています。 |
注 | アクティブのサブハイパーテキスト・ビューアー・ウィンドウは、テキスト・ビューアーになるようになっています。
検索メッセージがボタン・メッセージに対する応答として送られる場合には、常にこれが当てはまります。
ユーザー定義メッセージは、イベント関数をもつどのウィンドウにも送ることができます。 すべてのユーザー定義メッセージには、$MsgUser 以上の値が必要です。 ユーザー定義メッセージとともに追加のどのようなパラメーターでも渡すことができます。 メッセージにどのパラメーターが有効であるかを認識するのは、受信側ウィンドウの責任です。 SendMessage ステートメントで追加のパラメーターを割り当てることができる場合には、それらはイベント関数で割り当てることができます。 |
送信先 | このメッセージは、汎用ウィンドウ、スクロール・ウィンドウ、ハイパーテキスト・ビューアー・ウィンドウ、またはダイアログ・ボックスに送ることができます。 |
説明 | ウィンドウが最小化される時に表示されるアイコンを設定します。 |
イベント・パラメーター | イベント・パラメーターには、表示するアイコン・ファイル名 (ストリング) が含まれています。 |
送信先 | このメッセージは、イメージ・ウィンドウに送ることができます。 |
説明 | イメージを設定します。 |
イベント・パラメーター | イベント・パラメーターには、表示するイメージ・ファイル名 (ストリング) が含まれています。イメージは、OS/2 ビットマップ・ファイル、Windows ビットマップ、または PCX イメージ・ファイルとすることができます。 |
注 | 詳細については、WinCreateImage を参照してください |
送信先 | このメッセージは、いずれのウィンドウにも送信することができます |
説明 | ウィンドウのサイズ (フレーム、タイトル・バー、およびその他の要素を含む) を設定します。 |
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
送信先 | このメッセージは、タイトル・バーをもついずれのウィンドウにも送信することができます |
説明 | タイトル・バーのテキストを指定されたテキストに設定します。 |
イベント・パラメーター | イベント・パラメーターには、タイトル・バーに表示するテキスト (ストリング) が含まれています。 |
送信先 | このメッセージは、いずれのウィンドウにも送信することができます |
説明 | ウィンドウの可視性を設定します。 |
イベント・パラメーター | イベント・パラメーターには、ウィンドウが目に見えるか (TRUE) 、目に見えないか (FALSE) を示す TRUE または FALSE のいずれかが含まれています。 |
送信先 | このメッセージは、汎用ウィンドウまたはスクロール・ウィンドウに送ることができます。 |
説明 | ウィンドウのユーザー域のサイズを指定された高さと幅に設定します。これにしたがって、ウィンドウ・フレームのサイズを調整します。 |
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
送信先 | このメッセージは、汎用ウィンドウまたはスクロール・ウィンドウに送ることができます。 |
説明 | ウィンドウのシステム・タイマーを開始します。このタイマーは、指定された間隔でウィンドウに $MsgTimer メッセージを送ります。 |
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
注 | オペレーティング・システムは、$MsgTimer メッセージがウィンドウに送られる間隔の正確性を保証しません。 使用可能なタイマーの数には制限があります。不要になった時には、常にタイマーを停止してください。 |
送信先 | このメッセージは、汎用ウィンドウまたはスクロール・ウィンドウに送ることができます。 |
説明 | $timerId で開始されたタイマーを停止します。 |
イベント・パラメーター | イベント・パラメーターには、タイマーの ID (整数) が含まれています。 |
送信先 | このメッセージは、汎用ウィンドウまたはスクロール・ウィンドウに送ることができます。 |
説明 | ウィンドウに送られるタイマー・メッセージをシミュレートします。 |
イベント・パラメーター | イベント・パラメーターには、タイマーの ID (整数) が含まれています。 |
送信先 | ユーザーによって定義されたいずれかのウィンドウまたはダイアログ・ボックス |
説明 | これは、ユーザー定義メッセージ定数です。 |
イベント・パラメーター | どのようなパラメーターでもユーザー定義メッセージとともに渡すことができます。 SendMessage ステートメントに追加のパラメーターを割り当てることができる場合には、そのパラメーターは、イベント関数中で割り当てることができます。 受信側ウィンドウは、メッセージに有効なパラメーターを認識していなければなりません。 |
注 | すべてのユーザー定義メッセージは、$MsgUser+n という値をもっていなければなりません。n は、新規メッセージ定数に割り当てるために選択する任意の数です。 |
次のメッセージは、PostMessage ステートメントによってウィンドウ・ハンドルに送信することができます。
転記先 | このメッセージは、メニュー・バーをもついずれのウィンドウにも転記することができます。 |
説明 | menuSelection 引き数に指定された ID をもつメニュー・アイテムのユーザー選択をシミュレートします。 |
イベント・パラメーター | menuSelection (整数) |
注 | 詳細については、 WinSetMenuBar を参照してください |
転記先 | このメッセージは、いずれのウィンドウにも転記することができます |
説明 | ウィンドウ・フレームの左上隅を指定された位置に移動します |
イベント・パラメーター | 次の 2 つのイベント・パラメーターがあります。
|
転記先 | このメッセージは、いずれのウィンドウにも転記することができます |
説明 | ウィンドウに自身で再ペイントするように要求します。 |
転記先 | このメッセージは、状況バーをもついずれのウィンドウにも転記することができます。 |
説明 | ウィンドウに自身の状況バーを再ペイントするように要求します。 |
転記先 | ユーザー定義メッセージは、イベント関数をもつどのウィンドウにも転記することができます。 |
説明 | すべてのユーザー定義メッセージには、$MsgUser 以上の値が必要です。 |
イベント・パラメーター | どのイベント・パラメーターでも、ユーザー定義メッセージとともに渡すことができます。メッセージにどのパラメーターが有効であるかを認識するのは、受信側ウィンドウの責任です。パラメーターは、常に値によって渡されます。 |
DDE アプリケーションからの発信通信は、すべて該当する TSD Script ステートメントによって処理しなければなりません。次のステートメントを参照してください。
ヒント: DDE メッセージが受け取られるたびに、$MsgDDEAcknowledge メッセージが戻されるはずです $MsgDDEAcknowledge が戻されない場合には、メモリーの消失につながる可能性があります。
ヒント: $MsgDDExxx が受け取られた時に肯定応答を送りたい場合には、EXIT ($DDEAck) とするだけでかまいません 。 否定応答を送りたい場合には、EXIT(0) とするだけでかまいません。
Tivoli Service Desk 6.0 Developer's Toolkit Script 言語解説書