按下按钮后如何将焦点设置回形式

时间:2016-02-10 04:18:14

标签: c# forms button command focus

我正在制作一个游戏,并且打开和关闭商店,你按下S.在商店里,你有六种不同的购买选择,但它们都是按钮。

然而,一旦你买了东西,焦点不再在表格上,而是在按钮上,而按键事件是表格的一部分,因此,因为焦点从表格切换到按钮,按键事件不再有效,并禁止您关闭商店并继续游戏。

我的问题是如何在按下按钮后将焦点设置回表单?我从Visual Basic开始,代码将是form1.setfocus的代码,但它在c#中完全不同。

我尝试过激活表单.focus,很多,似乎没有任何东西将焦点重新设置回表单。非常感谢帮助。

3 个答案:

答案 0 :(得分:0)

尝试:

form.Focus();

MSDN:

  

如果控件成功接收到输入焦点,则Focus方法返回true。控件可以具有输入焦点,而不显示具有焦点的任何视觉提示。此行为主要通过下面列出的不可选控件或从中派生的任何控件来观察。

Tell me more

答案 1 :(得分:0)

<?php
$sta = $matches[1];
$tm = $matches[2];
$c = $matches[3];
$v= $matches[4];
$a1= $matches[5];
$a2= $matches[6];
$a3= $matches[7];
$a4= $matches[8];
$a5= $matches[9];
$a6= $matches[10];
$a11= $matches[11];
$a12= $matches[12];
$a13= $matches[13];
$a14= $matches[14];
$a15=$matches[15];
$a16= $matches[16];
$a17= $matches[17];
$a18= $matches[18];
$a19= $matches[19];
?>

但我认为,要在Form1.focus(); 本身上获取键盘事件,您需要为FormKeyPreview设置为true,以便表单首先获取键,然后是其他控件

答案 2 :(得分:0)

您也可以将按键事件添加到按钮中。