虚拟按键比较简单 sendkeys 就可以了
但是如果点击就得到焦点,就无法在文本框中输入内容。
实现代码如下
protected override CreateParams CreateParams //<--- { get { const int WS_EX_NOACTIVATE = 0x08000000; CreateParams cp = base.CreateParams; cp.ExStyle |= WS_EX_NOACTIVATE; return cp; } }
其他几个关键点
sendkeys
每个按键由一个或多个字符表示。为了指定单一键盘字符,必须按字符本身的键。例如,为了表示字母 A,可以用 “A” 作为 string。为了表示多个字符,就必须在字符后面直接加上另一个字符。例如,要表示 A、B 及 C,可用 “ABC” 作为 string。特殊符 加 (+)、插入符 (^)、百分比符 (%)、上划线 (~) 及圆括 ( ) 要将它放在大括 ({}) 当中。可用 {+} 表示。方括 ([ ]) 对 SendKeys 来说并不具有特殊意义,但必须将它们放在大括 中。
屏幕位置
private void Form1_Load(object sender, EventArgs e){ windowchange("中"); //这个区域不包括任务栏的 Rectangle ScreenArea = System.Windows.Forms.Screen.GetWorkingArea(this); //这个区域包括任务栏,就是屏幕显示的物理范围 // Rectangle ScreenArea = System.Windows.Forms.Screen.GetBounds(this); int width1 = ScreenArea.Width; //屏幕宽度 int height1 = ScreenArea.Height; //屏幕高度 this.Location = new Point(width1 - this.Width - 10, height1 - this.Height - 10); this.TopMost = true;}
C#虚拟键盘实现 如何让窗口不获得焦点-AiTeYou
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!