ここは旧式の4DドキュメントWebサイトです。最新のアップデートされたドキュメントを読むには新サイトをご利用下さい→ developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
OBJECT SET SCROLL POSITION
|
OBJECT SET SCROLL POSITION ( * ; object {; vPosition {; hPosition}}{; *} ) | ||||||||
引数 | 型 | 説明 | ||||||
* | 演算子 |
![]() |
指定された場合、オブジェクトがオブジェクト名 (文字列) 省略された場合、オブジェクトがテーブルまたは変数 | |||||
object | フォームオブジェクト |
![]() |
オブジェクト名 ( * が指定された場合) または テーブルまたは変数 ( * が省略された場合) | |||||
vPosition | 倍長整数 |
![]() |
表示する行番号、またはピクチャーの場合縦スクロール量 (ピクセル) | |||||
hPosition | 倍長整数 |
![]() |
リストボックスの場合表示する列番号、またはピクチャーの場合縦スクロール量 (ピクセル) | |||||
* | 演算子 |
![]() |
スクロール後の最初の位置に行を表示 (hPositionが渡された場合、列も対象) | |||||
OBJECT SET SCROLL POSITIONコマンドを使用して、 (MODIFY SELECTIONまたはDISPLAY SELECTIONコマンドを用いて表示される) リストフォーム、サブフォーム、階層リストなどの行、あるいはリストボックスの列や行、そしてさらにピクチャのピクセルをスクロールすることができます。
注: プログラムによるスクロールは、フォーム上でスクロールバーが隠されていても可能です。
最初のオプション引数 * を渡すと、引数 object は、サブフォーム、階層リスト、リストボックス、ピクチャーフィールド/変数オブジェクトの名前であることを指示します (この場合、文字列を object に渡します) 。この引数に何も渡さないと、引数 object は、テーブル (リストフォームテーブルまたはサブフォームテーブル) または変数 (階層リストのListRef、リストボックス、またはピクチャ) であることを示します。
vPosition引数を使用して、表示する行番号を指定したり、ピクチャーの場合は表示するピクセルの垂直座標を指定できます。
この引数を渡さないと、コマンドは選択されている最初の行が表示されるように縦スクロールを実行します。この場合、行が選択されていなかったり、選択された行が一つでも表示されていれば、縦スクロールは実行されません。
この引数を渡すと、コマンドは、設定された行が (ハイライトされているかいないかに関わらず)、指定された行が表示されるようにリストの縦スクロールを行います。行がすでに表示されていると、2番目の * 引数が渡されていない限り、コマンドはなにも行いません (後述)。
注: このコマンドは、たとえリストボックスが階層モードで表示されていたとしても、非階層の標準表示に基づいて実行される点に留意してください。リストボックスが階層モードあるいは標準モードどちらで表示されているかによって結果は異なります (例題参照)。
hPosition 引数はリストボックスとピクチャーのコンテキストで使用できます。
二番目のオプション引数 * を渡すと:
注: HIGHLIGHT RECORDSコマンドはオプション引数 * を使用してスクロール管理をOBJECT SET SCROLL POSITIONコマンドに委譲することができます。
この例題ではリストボックスが標準モードで表示されている場合と階層モードで表示されている場合の違いについて説明します:
OBJECT SET SCROLL POSITION(*;"mylistbox";4;2;*) // displays 4th row of 2nd column of list box in the first position
このステートメントが標準モードで表示されているリストボックスに適用されると:
リストボックスの行と列が実際にスクロールされます:
他方同じステートメントが階層モードのリストボックスに適用されると、行はスクロールされますが、2番目の列は階層の一部なので列はスクロールされません:
フォーム変数に格納されているピクチャーをスクロールしたい場合を考えます。このモンタージュ(合成画像)には、ピクチャーの表示されている部分と、表示すべき点(上から166ピクセル、左から200ピクセルの位置)が示されています:
表示されている部分をスクロールさせて、赤い点がピクチャー変数の原点に表示されるようにするためには、以下のように書きます:
OBJECT SET SCROLL POSITION(*;"myVar";166;200;*)
すると、以下のような表示になります:
この場合、2つ目の * 引数を省略しないように注意してください。省略してしまうと、定義された点は既に表示されているため、ピクチャーはスクロールされません。
HIGHLIGHT RECORDS
LISTBOX SELECT ROW
OBJECT GET SCROLL POSITION
プロダクト: 4D
テーマ: オブジェクト(フォーム)
番号:
906
変更: 4D v11 SQL
変更: 4D v12
名称変更: 4D v12 (SCROLL LINES)
ランゲージリファレンス ( 4D v20 R7)