当前位置: 首页 > news >正文

重庆网站房地产重庆建设注册执业中心网站

重庆网站房地产,重庆建设注册执业中心网站,工程建设管理,湖北营销型网站建设费用【 声明#xff1a;版权所有#xff0c;欢迎转载#xff0c;请勿用于商业用途。 联系信箱#xff1a;feixiaoxing 163.com】 在软件开发中#xff0c;如果存在canvas图像的话#xff0c;一般有几种控制方法。一种是鼠标控制#xff1b;一种是键盘控制#xff1b;还有一…【 声明版权所有欢迎转载请勿用于商业用途。 联系信箱feixiaoxing 163.com】 在软件开发中如果存在canvas图像的话一般有几种控制方法。一种是鼠标控制一种是键盘控制还有一种是定时器控制。定时器控制多常见动画、游戏、3d视频当中。而鼠标控制和键盘控制是更为常见的操作方法。鼠标控制之前绘图已经提到了今天主要说一说键盘的绘图控制。 要实现键盘的绘图控制关键在于有一个反馈回调函数。每当有按键按下去的时候我们可以收到对应的回调接口这样就可以对绘图进行控制了。 1、界面设计 界面设计有两个部分组成一个是显示图形目前是一个三角形模拟一个小飞机。我们对键盘的控制也是为了这个小飞机可以上、下、前、后运动。另外一个就是一个label它显示当前哪个键被按下去了主要也是为了调试使用。初始的时候三角形和label是重合的。 对应的xaml如下所示 Window x:ClassWpfApp.MainWindowxmlnshttp://schemas.microsoft.com/winfx/2006/xaml/presentationxmlns:xhttp://schemas.microsoft.com/winfx/2006/xamlxmlns:dhttp://schemas.microsoft.com/expression/blend/2008xmlns:mchttp://schemas.openxmlformats.org/markup-compatibility/2006xmlns:localclr-namespace:WpfAppmc:IgnorabledTitleMainWindow Height450 Width600 KeyDownWindow_KeyDown FocusableTrueCanvas Namecanvas BackgroundWhitePolygon Nameairplane Points0,0 30,10 0,20 StrokeBlack FillLightBlue /Label x:Namelabel ContentCurrent key: None Margin0,0,0,0//Canvas /Window在整个xaml文件当中最最重要的就是Window_KeyDown这个回调函数这和之前的MouseDown、MouseMove、MouseUp是很相似的。只不过canvas不支持keydown只好把对应的事件挪到上一层了。 2、代码设计 代码实现最主要的部分就是如何初始化好三角形以及如果响应键盘的操作。初始化的动作肯定是在窗口的构造函数完成的而剩下来的内容就是键盘的操作响应了。 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes;using System.Threading;namespace WpfApp {/// summary/// MainWindow.xaml 的交互逻辑/// /summarypublic partial class MainWindow : Window{private double airplaneLeft 0;private double airplaneTop 150;private double airplaneSpeed 5;public MainWindow(){InitializeComponent();UpdateAirplanePosition();}private void Window_KeyDown(object sender, KeyEventArgs e){switch (e.Key){case Key.Left:airplaneLeft - airplaneSpeed;label.Content Current key: left;break;case Key.Right:airplaneLeft airplaneSpeed;label.Content Current key: right;break;case Key.Up:airplaneTop - airplaneSpeed;label.Content Current key: up;break;case Key.Down:airplaneTop airplaneSpeed;label.Content Current key: down;break;}UpdateAirplanePosition();}private void UpdateAirplanePosition(){Canvas.SetLeft(airplane, airplaneLeft);Canvas.SetTop(airplane, airplaneTop);}}}为了确定每一次按键被按下去的时候是不是真的起作用在Window_KeyDown回调函数中增加了label显示的内容。这也算是一种调试的方法和手段吧。 3、测试和验证 测试的方法就非常简单了。编译无误之后利用键盘上的上下左右按键判断下三角形是否可以发生相应的移动并且label打印对不对如果没啥问题的话就说明相关的功能是ok的没有啥问题的。
http://www.eeditor.cn/news/122705/

相关文章:

  • 比赛网站开发创建直播平台
  • 大连建设工程设计院有限公司网站关于企业的网站
  • 资源网站模板下载做棋牌网站抓到会怎么量刑
  • 志愿服务网站建设方案wordpress网站布局
  • 合肥建设银行网站首页济南济南网站建设公司
  • 网站开发背景和目的dede 汽车网站
  • 南山专业做网站公司xp做网站
  • 怎样制定一个网站建设方案那个网站可以兼职做效果图
  • 分类网站建设网站的设计过程
  • 网站做程序cms建站模板下载
  • 医院网站备案二级域名解析网
  • 做的网站底部应该标注什么制作应用的网站
  • 汽车最专业的网站建设东莞网站推广服务
  • 如何做论坛网站 知乎上海做推广网站
  • 网络规划设计师可以同时报名吗专业网站优化
  • 网站要怎么做的吗网站备案中更名
  • 网站进度条wordpress换空间后内页全部404
  • 上海网站建设改版短网址 wordpress
  • 黑龙江省网站备案微信公众平台小程序官网
  • 做网站所用的语言网站的分辨率
  • 百度如何推广网站android软件开发
  • 网站建设主机耗电量义乌公司网站制作
  • 网站建设需要哪些硬件WordPress自动readmore
  • 百度给做网站吗如何做好网页设计
  • 做太空泥的几分钟网站怎么看百度指数
  • 定制型网站制作酒店预订网站建设
  • 西安企业建站费用做网站虚拟主机
  • 网络营销就是建立企业网站沈阳百度广告
  • 鞍钢节能公司网站开发建立网站内容
  • 网站建设竞品分析自己怎么做dj 视频网站