メインコンテンツまでスキップ
バージョン: 開発中

SCREEN DEPTH

SCREEN DEPTH ( depth ; color {; screen} )

引数説明
depthInteger画面の深度 (カラーの数 = 2^深度)
colorInteger1 = カラー画面、0 = 白黒またはグレイスケール
screenInteger画面番号、または省略した場合には主画面(メインスクリーン)

このコマンドはスレッドセーフではないため、プリエンプティブなコードには使えません。

説明

Screen depthコマンドは、モニターについての情報を引数depthcolorに返します。

画面の深度が引数depthに返されます。画面の深度は、モニター上に表示されるカラーの数を表す2のべき乗の指数です。例えば、モニターが256色(2^8) に設定されている場合、画面の深度は8になります。

4Dでは、以下の表の定義済み定数が用意されています。

定数
Black and white倍長整数0
Four colors倍長整数2
Millions of colors 24 bit倍長整数24
Millions of colors 32 bit倍長整数32
Sixteen colors倍長整数4
Thousands of colors倍長整数16
Two fifty six colors倍長整数8

モニターがカラーを表示するよう設定されている場合、colorには1が返されます。モニターがグレイスケールを表示するよう設定されている場合、colorには0が返されます。この値は、Macintoshのプラットフォーム上で重要であることに注意してください。

4Dでは、以下の表のように前もって定義された定数が用意されています。

定数
Is color倍長整数1
Is gray scale倍長整数0

オプションの引数screenは、得たい情報のモニターを指定します。引数screenを省略すると、コマンドは主画面 (メインスクリーン) の深度を返します。

例題

アプリケーションが多くのカラーグラフィックスを表示するとします。その場合には、データベースのどこかに以下のように記述することができます。

 SCREEN DEPTH($vlDepth;$vlColor)
 If($vlDepth<8)
    ALERT("The forms will look better if the monitor"+" was set to display 256 colors or more.")
 End if

参照

Count screens