在 wxGrid 中输入单元格时,箭头键用于在字符之间来回移动。但是,根据插入符号的位置,我想在按下箭头键时将光标移动到下一个单元格。目前,wxGrid 被配置为捕获 Enter 键,这使得光标向下移动(到下面的单元格)。我的问题是如何在仍显示编辑器时捕获 KeyEvent。
我的做法:
void Grid::OnGridCmdEditorShown( wxGridEvent& event )
{
m_IsEditorShown=true;
//Connect(wxEVT_KEY_DOWN,wxKeyEventHandler(Grid::OnKeyDown),NULL, this); //This approach did not help either
event.Skip();
}
void Grid::OnKeyDown(wxKeyEvent& event)
{
if(m_IsEditorShown) wxMessageBox("You are keying");
event.Skip();
}
当显示编辑器并说我abc
在当前单元格中键入时,消息框仅在我按 enter 时出现。当仍然显示编辑器时如何捕获 KeyEvents,例如,用户键入a
当前单元格并显示 MessageBox。