表示属性ルーチン

制約事項: これらのルーチンは、.NET 環境では現在サポートされていません。

これらのルーチンにより、汎用属性、つまり環境や端末タイプに関係なく移植可能な画面属性を利用できるようになります。

汎用属性を使用してプログラムから表示される画面は、Windows 搭載の IBM PC で実行されるか UNIX 搭載のシリアル端末で実行されるかにかかわらず、まったく同じ、または可能な限り同様になります。

汎用属性は、汎用属性表の索引に該当する 1 バイトです。この表には、使用される各索引の文字属性 (太字や下線など)、前景色、および背景色に関する情報が含まれています。さらに、この 2 つの色項目は、使用されている画面ハードウェアに固有の赤、緑、青 (RGB) 値の表であるカラーマップの索引となります。

カラーマップは、読み取り専用である場合も、読み書き可能である場合もあります。読み取り専用のカラーマップでは、ある色から別の色に RGB 値を動的に変更することはできません。カラーマップで提供されている体系の色のみを使用できます。読み書き可能なカラーマップでも、要求した色がハードウェアによって正確に生成されるという保証はありません。

表パラメーターを使用するルーチンの場合は、表内の最初の要素を渡すことも、動的に割り当てられたメモリ内にテーブルを構築してそのアドレスを渡すこともできます。

このルーチンでは、次のように RETURN-CODE が設定されます。

0 操作が正常に完了
1 指定された色が色データベースで見つからない
2 カラーマップの索引が範囲外
3 属性の索引が範囲外
4 完全に一致する要素が見つからない
5 環境で仮想カラーマップが許可されていない
6 仮想カラーマップを割り当てることができない
7 使用中の仮想カラーマップはない

ユーザー属性ルーチン

ユーザー属性は、各プログラムで最初はオフになっています。有効になると、画面上にテキストを表示するために使用できる各種の方法 (DISPLAY ...UPON CRT、画面入出力サブプログラム、拡張 ACCEPT および DISPLAY 構文など) でこの属性が使用されます。DISPLAY および ACCEPT 文の ANSI 形式 (UPON CONSOLE 指定を使用) では、他の DISPLAY または ACCEPT メソッドがすでに使用されている場合にのみユーザー属性が使用されます。

ユーザー属性は、属性を設定するように Adis に対して要求した後にのみ、拡張 DISPLAY および ACCEPT 構文の操作の結果に影響します。このような要求を行うには、属性を使用して拡張 ACCEPT または DISPLAY を実行する必要があります。次に例を示します。

     display spaces upon crt with highlight

ユーザー属性は、有効な場合、画面上にテキストを表示する際に使用され、表示で使用されている文字位置に対して設定された画面属性よりも優先されます。

X"A7" ルーチンを使用すると、他の環境に移植できないコードが生成される可能性があります。汎用属性ルーチンを使用することで、汎用的な色のサポートを実現できます。

WRITE to CON: を使用すると、出力は常にデフォルトのウィンドウに直接送られます。

ユーザー属性が有効でない場合は、文字位置に対して現在設定されている画面属性は変更されません。

DISPLAY ...UPON CRT-UNDER を使用すると、ユーザー属性がオンになっている場合には強調表示が適用されます。DISPLAY SPACE UPON CRT を使用すると、各画面位置のユーザー属性まで画面がクリアされます。