【WPF学习】第十七章 鼠标输入】的更多相关文章

鼠标事件执行几个关联的任务.当鼠标移到某个元素上时,可通过最基本的鼠标事件进行响应.这些事件是MouseEnter(当鼠标指针移到元素上时引发该事件)和MouseLeave(当鼠标指针离开元素时引发该事件).这两个事件都是直接事件,这意味着他们不使用冒泡和隧道过程,而是源自一个元素并且只被该元素引发.考虑到控件嵌入到WPF窗口的方式,这是合理的. 例如,如果有一个包含按钮的StackPanel面板,并将鼠标指针移到按钮上,那么首先会为这个StackPanel引发MouseEnter事件(当鼠标指…
 本系列文章由@二货梦想家张程 所写,转载请注明出处. 作者:ZeeCoder  微博链接:http://weibo.com/zc463717263 我的邮箱:michealfloyd@126.com   欢迎大家发邮件来和我交流编程心得 you are what you read!与大家共勉! -------------------------------------------------分割线:ZeeCoder--------------------------------------…
当用户按下键盘上的一个键时,就会发生一系列事件.下表根据他们的发生顺序列出了这些事件: 表 所有元素的键盘事件(按顺序) 键盘处理永远不会像上面看到的这么简单.一些控件可能会挂起这些事件中的某些事件,从而可执行自己更特殊的键盘处理.最明显的例子是TextBox控件,它挂起了TextInput事件.对于一些按键,TextBox控件还挂起了KeyDown事件,如方向键.对于此类情形,通常仍可使用隧道路由事件(PreviewTextInput和PreviewKeyDown事件). TextBox控件还…
通过使用变换(transform),许多绘图任务将更趋简单:变换是通过不加通告地切换形状或元素使用的坐标系统来改变形状或元素绘制方式的对象.在WPF中,变换由继承自System.Windows.Media.Transform抽象类的类表示.下表列出了这些类. 表 变换类 从技术角度看,所有变换都使用矩阵数学改变形状的坐标.不过,使用预先构建好的变换,如TranslateTransform.RotateTransform.ScaleTransform以及SkewTransform,比使用Matri…
XAML(Extensible Application Markup Language的简写,发音为“zammel”)是用于实例化.NET对象的标记语言.尽管XAML是一种应用于诸多不同问题领域的技术,但其主要作用是构造WPF用户界面.换言之,XAML文档定义了在WPF应用程序中组成窗口的面板.按钮以及各种空间的布局. 一.XAML变体 实际上术语“XAML”有多种含义.到目前为止,我们使用XAML标识整个XAML语言,它是一种基于通用XML语法.专门用于表示一颗.NET对象树的语言(这些对象可…
第十七章 使用BIOS进行键盘输入和磁盘读写 17.1 int 9 中断例程对键盘输入的处理 17.2 int 16 读取键盘缓存区 mov ah,0 int 16h 结果:(ah)=扫描码,(al)=ASCLL码. 17.4 应用 int 13h 对磁盘进行读写 只能以扇区为单位对磁盘进行读写. 读写扇区时,要给出面号,磁道号,扇区号.面号,磁道号从0开始,而扇区号从1开始. BIOS提供调用int 13h来访问磁盘 (ah)=int 13h的功能号//2表示读扇区,3表示写扇区 (al)=读…
如果你将 Windows 应用商店应用设计为触摸交互,则可免费获取对触摸板.鼠标.笔和键盘交互的支持.你的用户可以从一种输入法切换到另一种,而不会丧失应用体验的感觉.将键盘插入平板电脑?没问题.你的应用将对用户的选择做出一致且可预见的响应. 设计你的 Windows 应用商店应用的 UI 以支持触摸,同时考虑各种设备的设计含义: 结合了触摸和鼠标体验的触控板 鼠标 笔,专为数字墨迹而设计 键盘设备 触摸 Windows 提供一组在整个系统中使用的简单触摸交互功能.一致地应用此触摸语言可让用户对你…
在“[WPF学习]第五十章 故事板”中讨论了如何使用代码创建简单动画,以及如何使用XAML标记构建更复杂的故事板——具有多个动画以及播放控制功能.但有时采用更复杂的故事板例程,并在代码中实现全部复杂功能是合理的.实际上,这种情况十分常见.当需要处理多个动画并且预先不知道将有多少个动画或不知道如何配置动画时,就会遇到这种情况.如果希望在不同的窗口中使用相同的动画,或者只是希望从标记中灵活地分离出所有与动画相关的细节以以方便重用,也会遇到这种情况. 通过编写代码创建.配置和启动故事板并不难.只需要创…
前两章学习了WPF事件的工作原理,现在分析一下在代码中可以处理的各类事件.尽管每个元素都提供了许多事件,但最重要的事件通常包括以下5类: 生命周期事件:在元素被初始化.加载或卸载时发生这些事件. 鼠标事件:这些事件是鼠标动作的结果. 键盘事件:这些事件是键盘动作(如按下键盘上的键)的结果. 手写笔事件:这些事件是使用类似钢笔的手写笔的结果.在平板电脑上用手写笔代替鼠标. 多点触控事件:这些事件是一根或多根手指在多点触控屏上触摸的结果.尽在Windows7中支持这些事件. 一.生命周期事件 当首次…
创建动画面临的第一个挑战是为动画选择正确的属性.期望的结果(例如,在窗口中移动元素)与需要使用的属性(在这种情况下是Canvas.Left和Canvas.Top属性)之间的关系并不总是很直观.下面是一些指导原则: 如果希望使用动画来使元素显示和消失,不要使用Visibility属性(该属性只能在完全可见和完全不可见之间进行切换).应改用Opacity属性淡入或淡出元素. 如果希望动态改变元素的位置,可考虑使用Canvas面板.它提供了最直接的属性(Canvas.Left及Canvas.Top),…