PowerTools SPREAD for Windows Forms 8.0J > 開発者ガイド > SPREADコントロール > ビューポート |
表示画面を、個別にスクロール可能な複数のビューポートとして分割できます。 ビューポートの表示形式は、次の3通りです。
これにより、ごく限定的な領域に、広大なスプレッドシートのいくつかの部分を表示できます。 ビューポートはコーディングで追加、削除、およびカスタマイズできます。また、ユーザーにビューポートの作成と使用を許可できます。
ユーザーがビューポートを作成するには、次の図のように分割ボックスをクリックし、必要な位置にドラッグします。したがって、分割ボックスを表示することで、ユーザーに画面の分割を許可できます。ユーザーは水平、および垂直方向のいずれの方向に対しても、複数のビューポートを作成できます。なお、どちらかの方向にのみ分割ボックスを表示することもできます。詳しくは、「分割ボックス」を参照してください。
|
以下、ビューポートに関するメンバです。コーディングで使用します。
カスタマイズ | FpSpread(または SpreadView)クラスのメソッドまたはプロパティ |
---|---|
ビューポートの追加と削除 | AddViewport RemoveViewport |
ビューポートの高さと幅の設定 | SetViewportPreferredHeight SetViewportPreferredWidth GetViewportPreferredHeight GetViewportPreferredWidth |
画面上の特定の場所にあるビューポートを定義 | GetViewPortX GetViewPortY GetViewPortHeight GetViewPortWidth |
特定のビューポート行またはビューポート列を表すセル行またはセル列を定義 | GetViewportBottomRow GetViewportLeftColumn GetViewportRectangle GetViewportTopRow SetViewportLeftColumn SetViewportTopRow |
アクティブなビューポートを識別 | GetActiveColumnViewportIndex GetActiveRowViewportIndex SetActiveViewport |
特定のビューポート行またはビューポート列のインデックスを参照 | GetColumnViewportIndexFromX GetRowViewportIndexFromY |
いずれかの方向のビューポート数を参照 | GetColumnViewportCount GetRowViewportCount |
画面上の指定の位置にビューポートを配置 | ShowColumn ShowRow |
SetViewportPreferredXXXメソッドで設定する幅と高さは、コントロールに対する提案です。コントロールは、設定されたサイズにできるだけ近づくようにビューポートを配置します。しかし、設定されたサイズの合計がコンポーネントのサイズよりも大きくなる場合(または小さくなる場合)は、1つまたは複数のビューポートの実際のサイズを、設定より大きく(または小さく)する必要があります。
SetViewportPreferredXXXメソッドで設定する幅と高さには、-1 または正数を指定できます。-1は、可変サイズを表します。正数は、ピクセル単位の固定サイズを表します。コントロールがビューポートを配置する際、有効スペースはまず、固定サイズのビューポートに割り当てられます。残りのスペースが、可変サイズのビューポートに均等に割り当てられます。
ユーザーが分割ボックスを移動するたびに、FpSpreadクラスのColumnViewportWidthChangedおよびRowViewportHeightChangedイベントが発生します。コーディングでビューポートを追加する場合は、これらのイベントは発生しません。これらのイベントは、ユーザーがビューポートの幅または高さを変更したときのみ発生します。
固定行と固定列は、個別のビューポートです。 固定先頭行および固定先頭列は個別のビューポートであり、固定末尾行および固定末尾列もまた個別のビューポートです。 固定ビューポートのインデックスは、次の図のようになります。
固定行および固定列の詳細については、「行と列の固定」を参照してください。
次のサンプルコードは、ビューポートを追加し、設定します。
C# |
コードのコピー
|
---|---|
fpSpread1.AddViewport(1, 2); fpSpread1.SetViewportLeftColumn(1, 3); fpSpread1.SetViewportTopRow(0, 6); fpSpread1.SetViewportPreferredHeight(0, 100); fpSpread1.SetViewportPreferredWidth(0, 100); |
Visual Basic |
コードのコピー
|
---|---|
FpSpread1.AddViewport(1, 2) FpSpread1.SetViewportLeftColumn(1, 3) FpSpread1.SetViewportTopRow(0, 6) FpSpread1.SetViewportPreferredHeight(0, 100) FpSpread1.SetViewportPreferredWidth(0, 100) |