C#_chp10教程分析.ppt

第十章 与用户交互 本章内容 菜单 鼠标事件 键盘事件 常用对话框 1、常用的基本属性 (1)[Items]属性:用于编辑快捷菜单上的各菜单项。其编辑方式与MenuStrip控件的菜单项编辑相似,都是调用[项集合编辑器]对话框来生成菜单项的。 2、常用的基本事件 (1)ItemClicked事件:快捷菜单中的任何一个菜单项被单击时触发的操作。 (2)Opening事件:快捷菜单打开时触发的操作。 鼠标事件 鼠标事件是在鼠标与控件或窗体交互时产生的,这些事件包括:MouseDown、MouseUp、MouseMove、MouseEnter、MouseLeave、MouseHover、MouseWheel。 MouseEventArgs包括如下属性: Button:获取点击哪个键。其值是一个MouseButtons枚举:Left、Middle、None、Right X Y Clicks:点击次数 private void label1_MouseDown(object sender, MouseEventArgs e) { label1.Text = 点下; if (e.Button == MouseButtons.Left) label1.Text += 左键; if (e.Button == MouseButtons.Right) label1.Text += 右键; } private void label1_MouseUp(object sender, MouseEventArgs e) { label1.Text = 鼠标抬起; } private void Form1_MouseDown(object sender, MouseEventArgs e) { Text = 鼠标点下 + x: + e.X + Y: + e.Y; } private void Form1_MouseMove(object sender, MouseEventArgs e) { if(e.Button==MouseButtons.Left) Text = 鼠标移动 + x: + e.X + Y: + e.Y; } 键盘事件 在控件有焦点的情况下,按下或松开键盘上的键时会产生键盘事件。所有的控件和窗体都能触发键盘事件。 键盘事件包括(按如下顺序发生) KeyDown:在控件有焦点的情况下按下键时发生。 KeyPress:在控件有焦点的情况下按下键时发生。 KeyUp:在控件有焦点的情况下释放键时发生。 KeyPress 和KeyDown 、KeyUp的区别 KeyPress主要用来捕获ASCII码键, KeyDown 和KeyUp 通常可以捕获键盘所有按键。 KeyPress 只能捕获单个字符,KeyDown 和KeyUp 可以捕获组合键。 KeyPress 可以捕获单个字符的大小写。KeyDown和KeyUp 对于单个字符捕获的KeyValue 都是一个值,只能获取单个字符的大写。 KeyPress 不区分小键盘和主键盘的数字字符。KeyDown 和KeyUp 区分小键盘和主键盘的数字字符。 KeyPress的参数是KeyPressEventArgs,其中的KeyChar代表键位。 KeyDown和KeyUp的参数是KeyEventArgs。 KeyCode、KeyData、KeyValue KeyCode最为常用,记录了键盘上按了哪个键,当使用组合键时如ctrl+a,其值是A; KeyData可以记录组合键,当使用组合键时如ctrl+a时,其值为A,ctrl; KeyValue则是KeyCode的数字值,当使用组合键时如ctrl+a时,其值为65(A),注意不是97(a); 注意:这三个属性对于字母键只记录其大写的值(不管你是否开启了caplock或是按下shift键),如果一定要区分到底是大小写,可以使用KeyChar来判断。 private void Form1_KeyPress(object sender, KeyPressEventArgs e) { char key = e.KeyChar; label

文档评论(0)

1亿VIP精品文档

相关文档