我正在使用PictureBox在主对话框表格中放置和重新定位(移动)一些图片。 我希望能够删除按下的Delete键上的图片。 我找不到列出的控件的键盘处理事件。
好吧,我可以将KeyDown用于Form并检查PictureBox是否有焦点,但看起来很难看。
可以看到它有事件http://msdn.microsoft.com/en-us/library/system.windows.forms.picturebox.keydown.aspx
但实际上并没有......
有什么想法吗?
答案 0 :(得分:3)
这是一个不那么微妙的提示,这些控件都不能得到关注。键盘事件仅为可以聚焦的控件生成。 TextBox是最终的例子,但许多其他人都这样做。他们可以通过虚线聚焦矩形,颜色或插入符号向用户指示焦点。
但不是PictureBox也不是Label,你可以点击它们所有你想要的但它们不会成为焦点并且不会指出它。它们只是分别显示图像或文本的小石头。用户不希望他们做任何有趣的事情。
我不知道你想给他们什么样的焦点行为,但是将一个不可聚焦的控制转变为可聚焦控制的例子是this answer。
答案 1 :(得分:1)
由于图片框无法获得焦点,因此请查看表单,并在用户按Delete键时查看焦点可能(或可能)的位置。
确定您希望删除键的表单上的哪些控件(按钮,复选框等,但可能不是文本框),并使用这些控件中的keydown事件来执行相应的操作。 / p>
表单的keydown事件并不总是按照您期望的方式工作,因此在表单的各个控件中使用keydown事件可能会更好。