4D v16.3オブジェクトの表示プロパティを設定する |
||||||||||||
|
4D v16.3
オブジェクトの表示プロパティを設定する
オブジェクトの表示プロパティを設定する
フォーム中のオブジェクトはそれぞれプロパティを持ち、アプリケーションモードでのアピアランスや表示方法、リサイズ方法などが指定されます。これらのプロパティはプロパティリストからアクセスします (フォームエディター参照)。 ダイナミックオブジェクトに関する特定のプロパティはアクティブオブジェクトを使用する、リストボックス、そしてサブフォームとウィジェットで説明します。 フォームエディターでオブジェクトのサイズを設定する方法には以下があります:
ハンドルを使用する標準の方法でオブジェクトのサイズを変更できます。Shiftキーを押してハンドルをドラッグすると制約付きのサイズ変更となります。線は水平、45°、あるいは縦にひかれ、四角は正方形に、楕円は円になります。マグネティックグリッドが有効になっていると、手作業によるサイズ変更は5ピクセル単位になります。マグネティックグリッドについてはマグネティックグリッドを使用するを参照してください。 座標を入力してオブジェクトを移動したりサイズ変更したりするには、オブジェクトを選択して、プロパティリストの"位置調整&サイズ調整"テーマを展開します。座標はルーラーに設定した単位に基づきピクセル、センチ、インチ単位で表示されます。フォームエリアの左上座標が0,0です。座標入力エリアに新しい座標を入力します。 4Dは入力された座標にオブジェクトを移動します。指定した値に基づき、オブジェクトはサイズ変更や移動されます。 注: マルチプラットフォームのコンテキストでは、スタイルシートを適用することでオブジェクトの高さが可変になることがあります。オブジェクトの高さはカレントのプラットフォームに設定されたフォントの高さに基づき倍数で計算されるためです。スタイルシートについてはスタイルシートを参照してください。 スタティックテキストエリアとピクチャーを、現在のグラフィック特性 (フォントサイズ、スタイル等) に基づき自動で最適表示サイズにすることができます:
このコマンドは以下の効果を及ぼします:
角の丸い四角タイプのオブジェクトのプロパティリスト内には、"座標とサイズ"テーマ内に角の半径というプロパティがあります: デフォルトでは、角の丸い四角の角の半径は5ピクセルと鳴っています。このプロパティを変更することによって独自の形の角の丸い四角を描画することができます: 最小値は0で、この場合には標準の(角の丸くない)四角が描画されます。 このプロパティは、OBJECT Get corner radius と OBJECT SET CORNER RADIUS コマンドを使用して設定することもできます。 アプリケーションモードでユーザーがフォームを表示しているウィンドウのサイズを変更すると、そこに含まれるオブジェクトもサイズ変更されたり、移動されたりします。 フォームを表示するウィンドウのサイズをユーザが変更すると、自動サイズ調整が行われます。自動サイズ調整により、フォームを拡げるとオブジェクトも拡大されます(または拡げたウィンドウが縮小された場合にはオブジェクトも縮小されます)。例えば入力フォーム上でフィールドを囲む四角形を使用している場合は、ユーザがウィンドウを拡大すると、自動サイズ調整によりその四角形はウィンドウの端まで拡げられます。 また、自動位置調整機能を利用することも可能です。フォームサイズが変更されると、自動位置調整によりオブジェクトは水平方向または垂直方向に移動されます。自動位置調整が有効である場合、ユーザがウィンドウサイズを小さくすると、4D は見える位置にそのオブジェクトを維持しようとします。例えば、ボタンの列のサイズが変更されて、一部のボタンが隠れてしまった場合、自動位置調整により、ボタンは水平方向または垂直方向へ移動され、ボタンが表示される位置に調整されます。 自動サイズ調整機能や自動位置調整機能は、プロパティリストのリサイズオプションテーマで有効にすることができます。このテーマには水平サイジングと垂直サイジングという2 つの行があり、3 種類のプロパティを指定することができます(なし、拡大、移動)。
位置調整オプションを使用すると、表示された状態を維持するために、オブジェクトは指定された方向へ移動されます。 なしオプションを指定すると、フォームサイズが変更されても、オブジェクトは固定されたままになります。 4Dでは、デフォルトで各ウィンドウの右側面と下側面は“プッシャー”スプリッターとして機能します。つまりウィンドウを大きくすると、画面上のウィンドウ境界の右側や下側にあるオブジェクトが右方向や下方向へ自動的に押し出されます: 注: この機能はスクロールバー付きのウィンドウでは動作しません。 大部分のオブジェクトに対してデフォルトで非表示プロパティを指定することができます。 プロパティリストの"表示"テーマにあるこのプロパティを使用すると、ダイナミックなインターフェースを容易に開発できるようになります。このようなインターフェースを開発するとき、多くの場合はフォームのOn Loadイベント中にプログラムからオブジェクトを非表示にした後で、一部のオブジェクトを再度表示する必要性が頻繁に生じます。 デフォルトで非表示プロパティを使用すると、特定オブジェクトをデフォルトで非表示にしておくことにより、このロジックを逆に働かせることができます。この後、開発者は状況に応じてOBJECT SET VISIBLEコマンドを使用し、これらのオブジェクトを表示するようプログラミングすることができます。このコマンドに関する詳細は4Dランゲージリファレンスマニュアルを参照してください。 注: このプロパティとポップアップメニューの非表示プロパティを混同しないでください。ポップアップメニューの非表示プロパティでも、オブジェクトが表示されなくなりますが、そのオブジェクトはアクティブな状態のままです。 プロパティリストの"アピアランス"テーマでオブジェクトごとにアピアランスを設定できます。これを行うには以下の選択肢があります:
注: 以前のバージョンの4Dから変換されたデータベースの場合、追加のプラットフォームプロパティを選択できることがあります。プラットフォームインターフェースプロパティについてはフォームプロパティを参照してください。 背景と境界プロパティを使用してオブジェクトの境界線やグラフィックアピアランスを設定できます。 透過属性は、透明または不透明になることができるオブジェクト (フィールド、変数、リストボックス、ボタン、ピクチャー、スタティックテキスト等) の"背景色と境界線"テーマで利用できます。オブジェクトの背景を透明にして、フォームの背景色を使用することができます。 以下の例は透明属性を設定していない、また設定したスタティックピクチャーです:
プロパティリストの"背景色と境界線"やコンテキストメニューの境界線スタイルサブメニューを使用して、ほとんどのオブジェクトの境界線スタイルを変更できます。これを行うには以下の選択肢があります:
注: このテーマの他のプロパティは設定された線のタイプによって変化します。例えば"ドット"を選択すると、プロパティリストに点線タイププロパティが表示されます。 以下はWindowsにおける境界線スタイルの例です: 4Dではモニターへの表示や、カラープリンターでの印刷時に使用できる、カラープロパティをオブジェクトに設定できます。 コンテキストメニューのカラーコマンドまたはプロパティリストから直接選択して、背景と境界線に異なるカラーを設定できます。 注: プロパティリストでは背景色が塗りカラー、境界線の色が線カラーと記載されています。コンテキストメニューでは描画色が線カラーに対応します。 背景色ではプロパティリストで2つの標準オプションを利用できます:
プロパティリストでは他...を選択することでシステムカラーパレットを表示し、カスタム色を選択することができます。 このプロパティは境界線スタイルで"ドット"を選択すると表示されます。ドット線フォーマットを選択するために使用します: 4Dでは線や、楕円、グリッド、四角などのオブジェクトに線幅を設定できます。 線幅はプロパティリストやオブジェクトメニューの線幅メニュー項目から指定します: 線幅を一つ選択します。プリンターで印刷できる最細幅である極細線及び1, 2, 3 あるいは 4ポイントの線幅から選択できます。その他...を選択すると、4Dは20ポイントまでを指定できるダイアログボックスを表示します。 プロパティリストの"テキスト"テーマ、またはオブジェクトメニューのフォント、スタイル、カラーサブメニューを使用して、テキストオブジェクトのフォント属性・スタイル属性を設定できます。 以下の属性を設定できます:
Appleからの推奨に従い、OS Xの4D v13ではテキストレンダリングに使用されている frameworks が更新され統一されています(廃止予定であったQD/MLTE frameworks を放棄し、CoreText の使用へと移行しました)。 この新しいCoreText framework への移行に伴う問題が最小限にとどまるように努力はしておりますが、OS Xの4D v13へと変換されたアプリケーションのテキストエリアのレンダリング(特に改行に関するレンダリング)において多少の変化を引き起こす可能性があります。この場合、変換する前のv12のデータベース内でいくつかのフォームオブジェクトをリサイズする必要があるかもしれません。
|
プロパティ
プロダクト: 4D
履歴
ARTICLE USAGE
デザインリファレンス ( 4D v16) |
||||||||||