大家我知道默认标签和图片框无法有焦点,我在表格上设计方法按键向下移动这些控件关于箭头按钮
当我制作动态视频播放器控件时,我无法再移动这些控件,也不会再显示该表单获得焦点
我已经尝试过这个。制作视频播放器之后的重点,是否有任何人可以想到的可能会继续关注永久性的形式
如果示例代码是需要我将复制,但代码本身看起来很好视频播放器只是保持焦点
Form 1 Keydown
if (SenderS == "Label")
{
// Label b = sender as Label;
Label b = (Label)Controls[ControlID];
int x = b.Location.X;
int y = b.Location.Y;
if (e.KeyCode == Keys.Right) x += 1;
else if (e.KeyCode == Keys.Left) x -= 1;
else if (e.KeyCode == Keys.Up) y -= 1;
else if (e.KeyCode == Keys.Down) y += 1;
b.Location = new Point(x, y);
}
将鼠标标记下来
SenderS = "Label";
Label b=sender as Label;
ControlID = b.Name;
此代码工作正常,但当视频添加到表单时,我无法再使用它 我假设因为表单不再接受keydown事件
答案 0 :(得分:0)
作为一般用途,您首先需要覆盖IsInputKey方法:
private void YourControl_KeyDown(object sender, KeyEventArgs e)
{
//your logic here
}
protected override bool IsInputKey(System.Windows.Forms.Keys keyData)
{
switch (keyData)
{
case Keys.Right:
case Keys.Left:
case Keys.Up:
case Keys.Down:
return true;
}
return base.IsInputKey(keyData);
}
或覆盖ProcessCmdKey方法。