作成日: 2018/12/26 最終更新日: 2018/12/26
文書種別
使用方法
詳細
MouseMoveイベントでマウスポインタ位置に応じてAllowDragDropプロパティの設定を切り替えることで、特定のセル上のみマウスポインタの形状を変更することが可能です。
◎サンプルコード(VB)
◎サンプルコード(C#)
◎サンプルコード(VB)
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' マウスカーソルの変更
FpSpread1.SetCursor(FarPoint.Win.Spread.CursorType.DragDropArea, Cursors.Hand)
' ドラッグ&ドロップを許可するセルの指定
FpSpread1.ActiveSheet.Cells(1, 1).BackColor = Color.LavenderBlush
FpSpread1.ActiveSheet.Cells(1, 1).Tag = True
End Sub
Private Sub FpSpread1_MouseMove(sender As Object, e As MouseEventArgs) Handles FpSpread1.MouseMove
' マウスポインタ位置のセル情報の取得
Dim Range As FarPoint.Win.Spread.Model.CellRange = FpSpread1.GetCellFromPixel(0, 0, e.X, e.Y)
' マウスポインタがアクティブセル上にある場合
If Range.Contains(FpSpread1.ActiveSheet.ActiveRowIndex, FpSpread1.ActiveSheet.ActiveColumnIndex) Then
' アクティブセルでドラッグ&ドロップが許可されている場合
If FpSpread1.ActiveSheet.ActiveCell.Tag <> Nothing And CType(FpSpread1.ActiveSheet.ActiveCell.Tag, Boolean) = True Then
' ドラッグ&ドロップの許可
FpSpread1.AllowDragDrop = True
Else
' ドラッグ&ドロップの禁止
FpSpread1.AllowDragDrop = False
End If
End If
End Sub
' マウスカーソルの変更
FpSpread1.SetCursor(FarPoint.Win.Spread.CursorType.DragDropArea, Cursors.Hand)
' ドラッグ&ドロップを許可するセルの指定
FpSpread1.ActiveSheet.Cells(1, 1).BackColor = Color.LavenderBlush
FpSpread1.ActiveSheet.Cells(1, 1).Tag = True
End Sub
Private Sub FpSpread1_MouseMove(sender As Object, e As MouseEventArgs) Handles FpSpread1.MouseMove
' マウスポインタ位置のセル情報の取得
Dim Range As FarPoint.Win.Spread.Model.CellRange = FpSpread1.GetCellFromPixel(0, 0, e.X, e.Y)
' マウスポインタがアクティブセル上にある場合
If Range.Contains(FpSpread1.ActiveSheet.ActiveRowIndex, FpSpread1.ActiveSheet.ActiveColumnIndex) Then
' アクティブセルでドラッグ&ドロップが許可されている場合
If FpSpread1.ActiveSheet.ActiveCell.Tag <> Nothing And CType(FpSpread1.ActiveSheet.ActiveCell.Tag, Boolean) = True Then
' ドラッグ&ドロップの許可
FpSpread1.AllowDragDrop = True
Else
' ドラッグ&ドロップの禁止
FpSpread1.AllowDragDrop = False
End If
End If
End Sub
◎サンプルコード(C#)
public Form1()
{
InitializeComponent();
fpSpread1.MouseMove += FpSpread1_MouseMove;
}
private void Form1_Load(object sender, EventArgs e)
{
// マウスカーソルの変更
fpSpread1.SetCursor(FarPoint.Win.Spread.CursorType.DragDropArea, Cursors.Hand);
// ドラッグ&ドロップを許可するセルの指定
fpSpread1.ActiveSheet.Cells[1, 1].BackColor = Color.LavenderBlush;
fpSpread1.ActiveSheet.Cells[1, 1].Tag = true;
}
private void FpSpread1_MouseMove(object sender, MouseEventArgs e)
{
// マウスポインタ位置のセル情報の取得
FarPoint.Win.Spread.Model.CellRange range = fpSpread1.GetCellFromPixel(0, 0, e.X, e.Y);
// マウスポインタがアクティブセル上にある場合
if (range.Contains(fpSpread1.ActiveSheet.ActiveRowIndex, fpSpread1.ActiveSheet.ActiveColumnIndex))
{
// アクティブセルでドラッグ&ドロップが許可されている場合
if (fpSpread1.ActiveSheet.ActiveCell.Tag != null && (bool)fpSpread1.ActiveSheet.ActiveCell.Tag == true)
{
// ドラッグ&ドロップの許可
fpSpread1.AllowDragDrop = true;
}
else
{
// ドラッグ&ドロップの禁止
fpSpread1.AllowDragDrop = false;
}
}
}
{
InitializeComponent();
fpSpread1.MouseMove += FpSpread1_MouseMove;
}
private void Form1_Load(object sender, EventArgs e)
{
// マウスカーソルの変更
fpSpread1.SetCursor(FarPoint.Win.Spread.CursorType.DragDropArea, Cursors.Hand);
// ドラッグ&ドロップを許可するセルの指定
fpSpread1.ActiveSheet.Cells[1, 1].BackColor = Color.LavenderBlush;
fpSpread1.ActiveSheet.Cells[1, 1].Tag = true;
}
private void FpSpread1_MouseMove(object sender, MouseEventArgs e)
{
// マウスポインタ位置のセル情報の取得
FarPoint.Win.Spread.Model.CellRange range = fpSpread1.GetCellFromPixel(0, 0, e.X, e.Y);
// マウスポインタがアクティブセル上にある場合
if (range.Contains(fpSpread1.ActiveSheet.ActiveRowIndex, fpSpread1.ActiveSheet.ActiveColumnIndex))
{
// アクティブセルでドラッグ&ドロップが許可されている場合
if (fpSpread1.ActiveSheet.ActiveCell.Tag != null && (bool)fpSpread1.ActiveSheet.ActiveCell.Tag == true)
{
// ドラッグ&ドロップの許可
fpSpread1.AllowDragDrop = true;
}
else
{
// ドラッグ&ドロップの禁止
fpSpread1.AllowDragDrop = false;
}
}
}
旧文書番号
83489