X xaxaxa Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-19 #1 用ctrl+del可以把dbgrideh对应的数据表里面的内容删除,我想在按ctrl+del删除当前表内容的时候想同时执行一些其他的程序,不知道这个怎么实现,就是怎么捕捉ctrl+del事件
X xaxaxa Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-19 #3 能说的详细些吗?还真没有做过捕捉键盘事件的程序,并且还是一个删除操作<br>ctrl+del以后会出现一个提示是否删除的提示,想让我的其他一些过程在我选择‘yes’的时候执行,这个怎么处理?
X xianguo Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-19 #4 procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;<br> Shift: TShiftState);<br>begin<br> if (Shift = [ssCtrl]) and (Key=VK_DELETE) then<br> ...<br>end;
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;<br> Shift: TShiftState);<br>begin<br> if (Shift = [ssCtrl]) and (Key=VK_DELETE) then<br> ...<br>end;
F flamboyant Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-19 #5 if (Shift=[ssCtrl]) and (key=vk_delete) then<br> begin<br> //这里写代码<br> end;
X xaxaxa Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-19 #6 谢谢楼上两位,现在的问题我想在ctrl+del后出现的确认对话框选择‘yes’的时候才执行我的代码应该怎么办?
X xianguo Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-19 #7 procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;<br> Shift: TShiftState);<br>begin<br> if (Shift = [ssCtrl]) and (Key=VK_DELETE) then begin<br> If Application.MessageBox('确认删除?', pChar('提示信息'), MB_YESNO + MB_DEFBUTTON1) <> IDYES Then Exit;<br> ShowMessage('即将删除...');<br> end;<br>end;
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;<br> Shift: TShiftState);<br>begin<br> if (Shift = [ssCtrl]) and (Key=VK_DELETE) then begin<br> If Application.MessageBox('确认删除?', pChar('提示信息'), MB_YESNO + MB_DEFBUTTON1) <> IDYES Then Exit;<br> ShowMessage('即将删除...');<br> end;<br>end;
X xaxaxa Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-19 #8 谢谢楼上,你这个方法我知道,<br>可是在出现<br>‘即将删除’;<br>点击确定以后系统自己的确认对话框又出来了,怎么能让系统自己的确认删除对话框去掉
X xianguo Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-19 #9 系统自己的确认删除对话框?应用系统的提示吧?<br><br>procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;<br> Shift: TShiftState);<br>begin<br> if (Shift = [ssCtrl]) and (Key=VK_DELETE) then begin<br> If Application.MessageBox('确认删除?', pChar('提示信息'), MB_YESNO + MB_DEFBUTTON1) <> IDYES Then Exit;<br> 删除操作;<br> 其它操作;<br> end;<br>end;
系统自己的确认删除对话框?应用系统的提示吧?<br><br>procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;<br> Shift: TShiftState);<br>begin<br> if (Shift = [ssCtrl]) and (Key=VK_DELETE) then begin<br> If Application.MessageBox('确认删除?', pChar('提示信息'), MB_YESNO + MB_DEFBUTTON1) <> IDYES Then Exit;<br> 删除操作;<br> 其它操作;<br> end;<br>end;
X xaxaxa Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-19 #10 点击确定以后系统自己的确认对话框又出来了,怎么能让系统自己的确认删除对话框去掉 <br>请高手帮忙
X xianguo Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-19 #11 没弄懂你的意思<br>应用系统的提示是你在程序中设置的啊,去掉相关代码不就行了
F flamboyant Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-19 #12 dbgrid的options属性里的dgConfirmDelete属性设置为false,删除的时候不显示确认对话框。<br>dbgrideh就不知道了,没有用过~
X xuzhic2001 Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-20 #13 procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;<br> Shift: TShiftState);<br>begin<br> if (Shift = [ssCtrl]) and (Key=VK_DELETE) then begin<br> If Application.MessageBox('确认删除?', pChar('提示信息'), MB_YESNO + MB_DEFBUTTON1) <> IDYES Then Exit;<br> 删除操作;<br> 其它操作;<br> end;<br>end;<br>去掉系统自己的删除提示是更改dbgrideh的options 的dgConfirmDelete属性为false
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;<br> Shift: TShiftState);<br>begin<br> if (Shift = [ssCtrl]) and (Key=VK_DELETE) then begin<br> If Application.MessageBox('确认删除?', pChar('提示信息'), MB_YESNO + MB_DEFBUTTON1) <> IDYES Then Exit;<br> 删除操作;<br> 其它操作;<br> end;<br>end;<br>去掉系统自己的删除提示是更改dbgrideh的options 的dgConfirmDelete属性为false
唐 唐佐平 Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-20 #14 这个简单,在数据集的OnBeforeDelete事件写代码就好了