Delete キーの入力でセルの編集を開始するには?
対象製品
El Tabelle MultiRow 4.0J
詳細
既定の設定では、[Delete] キーを押したときにアクティブ セルの値がクリアされます。このとき、セルは編集状態に移行しません。
英数字の入力のように、キーを押したときにセルを編集状態に移行するには、次のようにコーディングします。
[Visual Basic]
[C#]
英数字の入力のように、キーを押したときにセルを編集状態に移行するには、次のようにコーディングします。
[Visual Basic]
Private Sub MultiRowSheet1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MultiRowSheet1.KeyDown
If e.KeyCode = Keys.Delete Then
'Deleteキーが押された場合の処理
If MultiRowSheet1.EditState = False Then
'セルの編集を開始する
MultiRowSheet1.KeyAction(GrapeCity.Win.ElTabelle.MKeyAction.EnterEdit)
If MultiRowSheet1.EditState = True Then
'編集が開始された場合、DELETEキーを送信する
SendKeys.Send("{DELETE}")
End If
e.Handled = True
End If
End If
End Sub
If e.KeyCode = Keys.Delete Then
'Deleteキーが押された場合の処理
If MultiRowSheet1.EditState = False Then
'セルの編集を開始する
MultiRowSheet1.KeyAction(GrapeCity.Win.ElTabelle.MKeyAction.EnterEdit)
If MultiRowSheet1.EditState = True Then
'編集が開始された場合、DELETEキーを送信する
SendKeys.Send("{DELETE}")
End If
e.Handled = True
End If
End If
End Sub
[C#]
private void multiRowSheet1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
if(e.KeyCode == Keys.Delete)
{
//Deleteキーが押された場合の処理
if(multiRowSheet1.EditState == false)
{
//セルの編集を開始する
multiRowSheet1.KeyAction(GrapeCity.Win.ElTabelle.MKeyAction.EnterEdit);
if(multiRowSheet1.EditState == true)
{
//編集が開始された場合、DELETEキーを送信する
SendKeys.Send("{DELETE}");
}
e.Handled = true;
}
}
}
{
if(e.KeyCode == Keys.Delete)
{
//Deleteキーが押された場合の処理
if(multiRowSheet1.EditState == false)
{
//セルの編集を開始する
multiRowSheet1.KeyAction(GrapeCity.Win.ElTabelle.MKeyAction.EnterEdit);
if(multiRowSheet1.EditState == true)
{
//編集が開始された場合、DELETEキーを送信する
SendKeys.Send("{DELETE}");
}
e.Handled = true;
}
}
}
キーワード
HowTo
この文書は、以前は次のFAQ IDで公開されていました : 8917