StringGrid控件相关 & F1-F12的快捷键设置
1 StringGrid控件
我想获得这样一个效果,我点了一个新建Button,StringGrid就新增一行。
然后通过setFocus,使得新增行的行首获得焦点。
接下来就是我面临的问题:
在一般情况下,我要想在某个cell里面输入数据,必须用鼠标点一下那个cell,才能进行输入。
我想在这个时候,直接输入数据,而不需要通过任何的键盘和鼠标操作。
不知道这该如何实现。
2 如何设置F1-F12的快捷键
我对一个按钮设置一个n的快捷键的话,只要在他的Caption属性中,加上 &n 就行了。
但现在我想将这个快捷键设置为F1-F12中的某一个键。
该如何设置。
有人说:如果要设置F1,那么就是这样 F&1 ,但其实不行。
有人说,必须得在键盘事件中设置,本人有点怀疑。
[解决办法]
2. 按钮设置Cation时添加&符号,只是设置加速键,操作时需要Alt + 对应&后面的字母作为快捷键。象F1~F12这样的热键,需要通过另外的方式来设置,一个比较简单的方法就是在Form的OnKeyDown事件中处理:
void __fastcall TForm1::FormKeyDown(TObject *Sender, WORD &Key,
TShiftState Shift)
{
if (Key == VK_F2);
Button1->Click();
}
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
KeyPreview = true;
}