4D v16.3

Window Types

ホーム

 
4D v16.3
Window Types

Window Types  


 

Open form window コマンドで開くウィンドウのタイプを指定するために、"Open Form Window" テーマ内の以下の定数のどれか一つを仕様することができます:

定数
Modal form dialog box 倍長整数 1
Movable form dialog box 倍長整数 5
Plain form window 倍長整数 8
Pop up form window 倍長整数 32
Sheet form window 倍長整数 33
Toolbar form window 倍長整数 35
Palette form window 倍長整数 1984
Form has full screen mode Mac 倍長整数 65536

この章ではそれぞれのタイプのウィンドウの、Windows(左)とmacOS(右)での様子を紹介します。

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

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

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

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

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

このタイプのウィンドウは以下のような長所があります:

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

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

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

Toolbarフォームウィンドウは、ウィンドウの位置、サイズ、グラフィックプロパティはツールバーのそれに準拠します。具体的には、以下の用になります:

  • ウィンドウは常にメニューバーのすぐ下に表示されます。
  • ウィンドウの水平方向のサイズはデスクトップ(macOS)または4Dのメインウィンドウ内部(Windows)の利用可能な全ての水平方向のスペースを埋める形で自動的に調整されます。ウィンドウの垂直方向のサイズは、他の全てのフォームウィンドウタイプ同様、フォームプロパティに準じます。
  • ウィンドウに境界線はなく、手動で移動・リサイズはできません。
  • 二つの異なるツールバーウィンドウを同じプロセス内で同時に作成することはできません(その場合にはエラー-10613"ツールバー型のフォームウィンドウを二つ作成することはできません"が生成されます)。

OS Xフルスクリーンモードでのツールバーフォームウィンドウ: お使いのアプリケーションがツールバーウィンドウと、フルスクリーンモードをサポートする(Form has full screen mode Mac オプション)標準ウィンドウの両方を表示する場合、標準のウィンドウがフルスクリーンモードに切り替わった時にはインターフェースのルールに則り、ツールバーを非表示にしなければなりません。ウィンドウがフルスクリーンモードに切り替わったかどうかを調べるためには、ウィンドウの垂直方向のサイズがスクリーンの高さと同じなったかをテストして下さい(詳細はHIDE TOOL BAR コマンドを参照して下さい)。

このタイプのウィンドウは、フローティングウィンドウを生成することができ、これはリサイズ可能かどうかを定義することができます。以下のオプションのみがサポートされています:

オプションWindows環境下で渡す値macOS環境下で渡す値
Not resizable-(Palette window+2)-Palette window
Resizable-(Palette window+6)-(Palette window+6)
  • タイトルを持てる: 渡されていれば可能
  • リサイズ可能: 可能、適切な値を渡す必要あり
  • 利用シーン: DIALOG あるいは DISPLAY SELECTION でのフローティングウィンドウ(データ入力なし)。

注: このタイプのウィンドウは、値のセット(定数+オプション)は常に負の値として渡されなければなりません。渡す際に、-(Palette window+6)を渡すという点に注意してください。(-Palette window+6)ではありません。

OS X環境下の4D v14 では、ドキュメントタイプのウィンドウにおいて新しいオプション「フルスクリーンモード」 が追加されています。これを使用すると、ウィンドウの右上隅に「全画面ボタン」が追加されます:

ユーザーがこのアイコンをクリックすると、ウィンドウはフルスクリーンモードになり、メインツールバーが自動的に隠されます。

このオプションを使用するにはForm has full screen mode Mac という定数をtype 引数に渡します。例えば以下のコードは、macOS環境下でフルスクリーンボタンを持ったフォームウィンドウを作成します:

 $win:=Open form window([Interface];"User_Choice";Plain form window+Form has full screen mode Mac)
 DIALOG([Interface];"User_Choice")

注: Windows 環境下ではこのオプションは何もしません。



参照 

Open form window

 
プロパティ 

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

 
履歴 

 
ARTICLE USAGE

ランゲージリファレンス ( 4D v16)
ランゲージリファレンス ( 4D v16.1)
ランゲージリファレンス ( 4D v16.2)
ランゲージリファレンス ( 4D v16.3)