MESCIUS SPREAD for Windows Forms 17.0J
タッチ操作によるドラッグ&フィル

タッチ操作とタッチ用メニューバーのサポートを使用して、ドラッグ&フィルを行えます。

まず、セル範囲を選択します。選択範囲をタップして、タッチ用メニューバーを表示します。[オートフィル]メニュー項目をタップすると、選択範囲の右下隅に、ドラッグ&フィルハンドルが表示されます。このハンドルをタップしたままスライドすることで、選択範囲のドラッグ&フィルが行われます。ドラッグ&フィルハンドルを表示および使用するには、FpspreadオブジェクトのAllowDragFill プロパティをtrueに設定する必要があります。

次の図は、ドラッグ&フィルのドロップダウンコンテキストメニューです。

設定方法

  1. タッチ用メニューのボタンを作成し、Clickイベントを実装します。
  2. タッチ用メニューを作成し、1.で作成したボタンを追加します。
  3. FpSpreadオブジェクトのAllowDragFillプロパティをtrueに設定します。
  4. FpSpreadオブジェクトのTouchStripOpeningイベントで、既定の処理をキャンセルし、2.で作成したタッチ用メニューを表示します。

サンプルコード

次のサンプルコードは、タッチ用メニューバーにドラッグ&フィルのアイコンを追加します。

C#
コードのコピー
private FarPoint.Win.Spread.CellTouchStrip touchStrip;

private void Form1_Load(object sender, EventArgs e)
{
    // タッチツールバーにオートフィルを追加
    touchStrip = new FarPoint.Win.Spread.CellTouchStrip(this.fpSpread1);
    FarPoint.Win.Spread.TouchStripButton autoFill2 = new FarPoint.Win.Spread.TouchStripButton("オートフィル", Properties.Resources.AutoFill);
    autoFill2.Click += autoFill_Click;

    touchStrip.Items.AddRange(new ToolStripItem[] { autoFill2 });
 
    // オートフィルを有効化
    fpSpread1.AllowDragFill = true;
}
 
void autoFill_Click(object sender, EventArgs e)
{
    FarPoint.Win.Spread.SpreadView activeView = fpSpread1.GetRootWorkbook().GetActiveWorkbook();
    if (activeView != null)
    {
        activeView.ShowAutoFillIndicator();
    }
}
 
void fpSpread1_TouchStripOpening(object sender, FarPoint.Win.Spread.TouchStripOpeningEventArgs e)
{
    // デフォルトのタッチツールバーを表示しない
    e.Cancel = true;
 
    // カスタマイズしたタッチツールバーを表示
    touchStrip.Show(new Point(e.X - 20, e.Y - 35 - touchStrip.Height));
} 
Visual Basic
コードのコピー
Private touchStrip As FarPoint.Win.Spread.CellTouchStrip
 
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    ' タッチツールバーにオートフィルを追加
    touchStrip = New FarPoint.Win.Spread.CellTouchStrip(Me.FpSpread1)
    Dim autoFill2 As New FarPoint.Win.Spread.TouchStripButton("オートフィル", My.Resources.AutoFill)
    AddHandler autoFill2.Click, AddressOf autoFill_Click
 
    touchStrip.Items.AddRange(New ToolStripItem() {autoFill2})
 
    ' オートフィルを有効化
    FpSpread1.AllowDragFill = True
End Sub
 
Private Sub autoFill_Click(sender As Object, e As EventArgs)
    Dim activeView As FarPoint.Win.Spread.SpreadView = fpSpread1.GetRootWorkbook().GetActiveWorkbook()
    If activeView IsNot Nothing Then
   
    activeView.ShowAutoFillIndicator()
    End If
End Sub
 
Private Sub FpSpread1_TouchStripOpening(sender As Object, e As FarPoint.Win.Spread.TouchStripOpeningEventArgs) Handles FpSpread1.TouchStripOpening
    ' デフォルトのタッチツールバーを表示しない
    e.Cancel = True
 
    ' カスタマイズしたタッチツールバーを表示
    touchStrip.Show(New Point(e.X - 20, e.Y - 35 - touchStrip.Height))
End Sub
参照

 

 


© MESCIUS inc. All rights reserved.