各位,我想问一下,如何在C++builder6 中,给应用增加一个快捷键。就是那种,本来显示日期、时间、场景、批号等等,增加快捷键后,按一下快捷键,就只显示日期,在按一下,就显示完全。
供参考:
//键盘事件
void __fastcall TForm1::FormKeyDown(TObject* Sender, WORD& Key,
TShiftState Shift)
{
if (Shift.Contains(ssShift)) // 如果按下了Shift键则在第一个面板上显示Shift
StatusBar1->Panels->Items[0]->Text = "Shift";
if (Shift.Contains(ssAlt)) // 如果按下了Alt键则在第二个面板上显示Alt
StatusBar1->Panels->Items[1]->Text = "Alt";
if (Shift.Contains(ssCtrl)) // 如果按下了Ctrl键则在第三个面板上显示Ctrl
StatusBar1->Panels->Items[2]->Text = "Ctrl";
if (Shift.Contains(ssAlt) && (Shift.Contains(ssCtrl))) // 如果同时按下了Alt+Ctrl键则在第二个面板上显示Alt+Ctrl
StatusBar1->Panels->Items[5]->Text = "Alt+Ctrl";
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormKeyUp(TObject* Sender, WORD& Key,
TShiftState Shift)
{
// 在Shift、Alt和Ctrl键弹起时清除状态栏中相应面板上的内容
if (!(Shift.Contains(ssShift)))
StatusBar1->Panels->Items[0]->Text = "";
if (!(Shift.Contains(ssAlt)))
StatusBar1->Panels->Items[1]->Text = "";
if (!(Shift.Contains(ssCtrl)))
StatusBar1->Panels->Items[2]->Text = "";
if (!Shift.Contains(ssAlt) && (!Shift.Contains(ssCtrl)))
StatusBar1->Panels->Items[5]->Text = "";
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormMouseDown(TObject* Sender, TMouseButton Button,
TShiftState Shift, int X, int Y)
{
if (Shift.Contains(ssLeft)) // 如果按下了左键则在第四个面板上显示left
StatusBar1->Panels->Items[3]->Text = "Left";
if (Shift.Contains(ssMiddle)) // 如果按下了中键则在第五个面板上显示Middle
StatusBar1->Panels->Items[4]->Text = "Middle";
if (Shift.Contains(ssDouble)) // 如果是双击则在第六个面板上显示Double
StatusBar1->Panels->Items[5]->Text = "Double";
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormMouseUp(TObject* Sender, TMouseButton Button,
TShiftState Shift, int X, int Y)
{
// 在鼠标按键弹起时清除状态栏中相应面板上的内容
if (!(Shift.Contains(ssLeft)))
StatusBar1->Panels->Items[3]->Text = "";
if (!(Shift.Contains(ssMiddle)))
StatusBar1->Panels->Items[4]->Text = "";
if (!(Shift.Contains(ssDouble)))
StatusBar1->Panels->Items[5]->Text = "";
}
//模拟键盘按键
void __fastcall TForm1::Button1Click(TObject* Sender)
{
// 模拟在Edit1组件中按下了字母a键
PostMessage(Edit1->Handle, WM_KEYDOWN, 65, 0);
}
//---------------------------------------------------
void __fastcall TForm1::Timer1Timer(TObject* Sender)
{
// 模拟在窗体Form1中按下了Tab键
PostMessage(Form1->Handle, WM_KEYDOWN, VK_TAB, 0);
}
//------------------------------------------