4D v13.4

ウィンドウタイプ

ホーム

 
4D v13.4
ウィンドウタイプ

ウィンドウタイプ  


 

 

Open windowコマンドで開くウィンドウのタイプを指定するために、以下の定義済み定数を使用できます:

定数 コメント
Plain no zoom box window 倍長整数 0
Modal dialog box 倍長整数 1
Plain dialog box 倍長整数 2 フローティング可
Alternate dialog box 倍長整数 3 フローティング可
Plain fixed size window 倍長整数 4
Movable dialog box 倍長整数 5 フローティング可
Plain window 倍長整数 8
Round corner window 倍長整数 16
Pop up window 倍長整数 32
Sheet window 倍長整数 33
Resizable sheet window 倍長整数 34
Palette window 倍長整数 1984 フローティング可
Texture appearance 倍長整数 2048
Compositing Mode 倍長整数 4096 *** 廃止予定の定数 ***
Has toolbar button Mac OS 倍長整数 8192

これらの定数の一つをOpen windowに渡すと、通常のウィンドウが開かれます。フローティングウィンドウを開くには負数のウィンドウタイプをOpen windowに渡します。
フローティングウィンドウの主な特徴は、ユーザが他のウィンドウをクリックしても常に最前面に居続けるということです。フローティングウィンドウは一般に恒久的な情報やツールバーを表示するために使用されます。

モーダルウィンドウは、ユーザのアクションをそのウィンドウに限定したい場合に使用します。モーダルウィンドウが表示されている間、メニューコマンドや他 のアプリケーションウィンドウはアクセスできなくなります。モーダルウィンドウを閉じるには、ユーザはウィンドウを受け入れるか、キャンセルするか、提供 される選択肢を選択しなければなりません。警告ダイアログは典型的なモーダルウィンドウの例です。
4Dにおいて、タイプ1と5がモーダルウィンドウです。

Note: モーダルウィンドウは常に最前面に居続けます。結果としてモーダルウィンドウが非モーダルウィンドウを呼び出すと、後者のウィンドウはモーダルウィンドウの後ろに開かれます。このような処理は避けなければなりません。
他方、モーダルウィンドウが他のモーダルウィンドウを呼び出す際は、後者のウィンドウが最前面に開かれます。

説明  

以下に、Windows (左) およびMacintosh (右) のウィンドウタイプを示します。

  • タイトルを持てる: はい
  • クローズボックスまたは同等の機能を持てる: はい
  • リサイズ可能: Macintosh上でいいえ
  • 最小化/最大化、またはズーム可: いいえ
  • スクロールバー: はい and いいえ
  • 利用シーン: ADD RECORD(...;...*) または同等のデータ入力

  • タイトルを持てる: いいえ
  • クローズボックスまたは同等の機能を持てる: いいえ
  • リサイズ可能: いいえ
  • 最小化/最大化、またはズーム可: いいえ
  • スクロールバー: いいえ
  • 利用シーン: DIALOG, ADD RECORD(...;...;*) または同等機能
  • このタイプのウィンドウはモーダルです

  • タイトルを持てる: はい
  • クローズボックスまたは同等の機能を持てる: はい
  • リサイズ可能: はい
  • 最小化/最大化、またはズーム可: Macintosh上でいいえ
  • スクロールバー: はい
  • 利用シーン: スクロールバーを持つデータ入力, DISPLAY SELECTION, MODIFY SELECTION, 他.

  • タイトルを持てる: はい
  • クローズボックスまたは同等の機能を持てる: はい
  • リサイズ可能: はい
  • 最小化/最大化、またはズーム可: はい
  • スクロールバー: はい
  • 利用シーン: スクロールバーを持つデータ入力, DISPLAY SELECTION, MODIFY SELECTION, 他.

  • タイトルを持てる: はい
  • クローズボックスまたは同等の機能を持てる: いいえ
  • リサイズ可能: いいえ
  • 最小化/最大化、またはズーム可: いいえ
  • スクロールバー: いいえ
  • 利用シーン: DIALOG, ADD RECORD(...;...;*) または同等機能
  • このタイプのウィンドウはモーダルですが、移動でき、フローティングのように使用できます

  • タイトルを持てる: いいえ
  • クローズボックスまたは同等の機能を持てる: いいえ
  • リサイズ可能: いいえ
  • 最小化/最大化、またはズーム可: いいえ
  • スクロールバー: いいえ
  • 利用シーン: DIALOG, ADD RECORD(...;...;*) または同等機能
  • フローティングウィンドウとして使用されない場合、このタイプはモーダルです

  • タイトルを持てる: いいえ
  • クローズボックスまたは同等の機能を持てる: いいえ
  • リサイズ可能: いいえ
  • 最小化/最大化、またはズーム可: いいえ
  • スクロールバー: いいえ
  • 利用シーン: DIALOG, ADD RECORD(...;...;*) または同等機能, スプラッシュスクリーン
  • フローティングウィンドウとして使用されない場合、このタイプはモーダルです

Open windowを呼び出すとき、以下の定数をPalette window定数に加算して、ウィンドウの振る舞いを変更できます:

定数
Has grow box 倍長整数 4
Has highlight 倍長整数 1
Has window title 倍長整数 2
Has zoom box 倍長整数 8

  • タイトルを持てる: はい (Has window title が指定されていれば)
  • クローズボックスまたは同等の機能を持てる: はい
  • リサイズ可能: はい (Has grow box が指定されていれば)
  • 最小化/最大化、またはズーム可: はい (Has zoom box が指定されていれば)
  • スクロールバー: はい (Has grow box が指定されていれば)
  • 利用シーン: DIALOGDISPLAY SELECTIONによるフローティングウィンドウ (データ入力なし)

  • タイトルを持てる: はい
  • クローズボックスまたは同等の機能を持てる: はい
  • リサイズ可能: Macintosh上でいいえ
  • 最小化/最大化、またはズーム可: いいえ
  • スクロールバー: Macintosh上でいいえ
  • 利用シーン: まれ (廃止)

シートウィンドウはMac OS X特有のものです。これらのウィンドウはタイトルバーからドロップダウンし、メインウィンドウの上、自動的に中央に表示されます。プロパティはモーダルダ イアログと互換があります。一般的にこのタイプのウィンドウは、主たるウィンドウ中で発生するアクションに直接関連するアクションを行うために使用されま す。

  • Mac OS X上で、最後に開かれたウィンドウが表示されていてまたフォームを表示しているときにのみ、シートウィンドウを作成できます。
  • このコマンドは以下の場合、タイプ33の代わりにタイプ 1 (Modal dialog box) のウィンドウを、タイプ34の代わりにタイプ8 (Plain) のウィンドウを開きます:
    • 最後に開いたウィンドウが非表示またはフォームを表示していない、
    • Windows上。
  • シートウィンドウはフォームの上に表示されなければならないため、その表示は、ウィンドウにロードされた最初のフォームのOn Loadイベントまで遅延されます (Open window コマンドの例題4参照)。
  • 利用シーン: Mac OS Xで、DIALOG, ADD RECORD(...;...*) または同等機能, (Windowsでは非標準)。

このタイプのウィンドウは基本的に Plain dialog box (2) のウィンドウと同じ特徴と機能を持ちますが以下の長所があります:

  • 以下の場合ウィンドウは自動で閉じられ、キャンセルイベントがウィンドウに渡されます:
    • ウィンドウの外でクリックされた;
    • 後ろにあるウィンドウまたはMDI (Multiple Document Interface) ウィンドウが移動された;
    • ユーザがEscキーを押した。
  • このウィンドウは親ウィンドウの前に表示されます (プロセスのメインウィンドウとして使用してはいけません)。後ろのウィンドウは無効にされていませんが、イベントは受け取りません。
  • マウスを使用してウィンドウをリサイズしたり移動したりはできません。しかしこれらのアクションをプログラムで行うと、背景項目の再描画が最適化されます。
  • 利用シーン: このタイプのウィンドウの主に3Dべベルやツールバータイプのボタンでポップアップメニューを処理するために使用されます。


Mac OS上で、ウィンドウにテクスチャアピアランスを適用することができます。このタイプのルックはMacintoshのあらゆるインターフェースで見ることができます。Windows上ではこのプロパティの効果はありません。

Open window コマンドで作成されたウィンドウにテクスチャアピアランスを適用するには、type 引数に設定するウィンドウタイプにTexture appearance定数を加算します。例えば以下のようにします:

 $win:=Open window(10;80;-1;-1;Plain window+Texture appearance;"")

このルックは以下のタイプのウィンドウに割り当てることができます:

Plain window
Plain no zoom box window
Plain fixed size window
Movable dialog box
Round corner window

コンポジットモードは、特に"メタル"や"テクスチャー"ルックを有効にしたり、Webエリアなど特定のオブジェクトを表示する際に、Mac OS X上でウィンドウを処理するために使用される内部モードです。

技術的な理由からこのモードは必要な場合にのみ、4Dのウィンドウで使用されます。Open windowOpen form window コマンドで開かれるウィンドウはデフォルトでこのモードを使用しません。これを有効にするには、Compositing Mode 定数 (Open window) または Compositing Mode form window (Open form window) 定数をウィンドウタイプに加算します。
Windows上ではこのプロパティは意味を持ちません。

Note: 特定の以前のアーキテクチャのオブジェクト (特にDISPLAY SELECTIONMODIFY SELECTIONで生成されるウィンドウや4D Chartエリア) はコンポジットモードと互換がありません。このようなオブジェクトがコンポジットモードのウィンドウに表示されると、正しく動作しません。

Mac OSにおいて、4D v12はツールバー管理ボタンを表示できます。この標準ボタンを使用してウィンドウのツールバーを表示したり隠したりできます:

Open window コマンドで開いたウィンドウにツールバー管理ボタンを表示するには、Has toolbar button Mac OS 定数を加算します。例えば以下のようにします:

 $NewWin:=Open window(10;10;1010;810;Plain window+Has toolbar button Mac OS)

ウィンドウのツールバー管理ボタンがユーザーによりクリックされると、On Mac toolbar buttonフォームイベントが生成されます。もちろんプロパティリストにおいて対応するフォームイベントがチェックされていなければなりません。
イベントが生成されるだけです。4Dはウィンドウ中で他の動作を一切行いません。ウィンドウのサイズを調整し、インターフェース要素を表示するのはデベロッパーの作業です。

 
プロパティ 

プロダクト: 4D
テーマ: ウィンドウ

 
参照 

Open external window
Open form window
Open window