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

建设校园网站的意义网站小程序app定制开发

建设校园网站的意义,网站小程序app定制开发,龙岗区最新通告,一品猪网站开发前言 续鼠标类设计之1,前面解决了鼠标信号问题,这里解决显示问题 引入 鼠标伴随操作系统而生,考虑在屏幕上怎样显示 思路 1>鼠标显示是一个动态效果,所以需要一个“动态效果类”对象,添加进鼠标类的属性里。 在面…

前言

        续鼠标类设计之1,前面解决了鼠标信号问题,这里解决显示问题

引入

        鼠标伴随操作系统而生,考虑在屏幕上怎样显示

思路

        1>鼠标显示是一个动态效果,所以需要一个“动态效果类”对象,添加进鼠标类的属性里。

        在面向对象的程序中,对象模拟的个体可以有动作---漆匠;对象模拟的动作也可以是对象。所以有了Painter类和Paint类。-----------来自“初识类”

        这里建立起一个MouseMove的类,并将其作为成员属性添加进鼠标类中


class Mouse{public:/*下列状态表示左击,右击,双击,拖拽,卷动,鼠标平移,升降,冻结*/enum State{LCLICK,RCLICK,DCLICK,DRAG,ROLL,MOVE,RISE,FREEZE};private:State state;MouseMove mouseMove;             //新增鼠标移动类对象public:Mouse();State getState(MouseInfo mi);    //传入鼠标信息类对象,获取状态
}

        2>鼠标显示是动态效果,采用一种思路:动态=静态效果的叠加

        所以建立一个类来实现静态的,初始的效果,也就是资源类,映射到硬件寄存器。目的是屏幕上显示出鼠标的外观。假设鼠标外观是个箭头,命名新类Arrow.

静态类实现

        现在已经有了静态类的目的:屏幕上生成一个箭头,来实现它.

class Arrow{private:vector<Point> points;public:Arrow(int x,int y);接口函数;
}

----接口函数是硬件供应商提供的,把采集到的点传入,得到箭头形状.

     这里我们能做的是采集相应的点.可以在构造方法里写出来..具体如何采集,可以自己硬写,也可以用计算机图形学的知识,笔者没有这方面的知识积累,所以先放一下.

效果类实现

        鼠标在屏幕上移动的效果,可以看作在不同的位置画箭头.

        有了这个思路,可以写出效果类        

class MouseMove{private:MouseInfo mi;                                     //鼠标信息类对象传入public:MouseMove(MouseInfo MI):mi(MI){};                 //构造函数void work();                               
}

        实现鼠标的移动

void MouseMove::work(){int moveTemp=mi.move;                                //提取鼠标横坐标int riseTemp=mi.rise;                                //提取鼠标纵坐标Arrow *arrow=new Arrow(moveTemp,riseTemp);           //生成箭头接口函数;                                            //显示箭头if(mi.move!=moveTemp||mi.rise!=riseTemp){Arrow *new_arrow=new Arrow(mi.move,mi.rise);     //重新生成箭头接口函数;                                        //重新显示箭头 delete(arrow);}
}

代码重构

        如果你没有被上面的代码所吓倒,那么我们可以继续.

        如果我们想要鼠标不只是"箭头"这一种图案,而需要更多选择,例如鼠标做成一朵花flower的图案,那么上面的代码肯定不满足要求.

        现在考虑把MouseMove设置成接口,    

class MouseMove{public:Virtual   void work()=0;                               
}
http://www.yayakq.cn/news/486990/

相关文章:

  • 做游戏都需要什么网站wordpress默认界面
  • 当下 如何做网站赚钱网页的制作与建设
  • 广水网站设计零售户电商网站订货网址
  • 移动通网站建设修改wordpress后台文字
  • 包装公司网站模板重庆黔江做防溺水的网站
  • 实时定量引物设计网站怎么做提供深圳网站制作公司
  • 网站开发的相关技能网站建设销售信
  • 怎么使用vs2017做网站企业商务网站有哪些
  • 网站开发和网页设计的区别wordpress 菜单小工具
  • 浏览器怎么设置不拦截任何网站青岛做网站哪个公司好
  • 宁波网站建设服务服务商怎么在企业站建立网站
  • 北京做网站比较大的公司wordpress 角色和权限
  • 免费婚恋网站设计泉州网站设计理念培训
  • 北京网站的建设263企业邮箱pop3设置
  • 上海做网站seo1免费网站建站
  • 网站图片宽度网站登录后不显示内容
  • 如何自己建站网站制作重庆百度推广关键词优化
  • 帝国视频网站模板官网微信
  • 推广网站怎么做模版百度云网站备案流程
  • 云谷系统网站开发南阳网站运营
  • 常州制作企业网站中国空间站设计在轨飞行几年
  • 网站导航设计法则网站建设是软件开发吗
  • 网站建设策划怎么谈攀枝花网站怎么做seo
  • cnetos 做网站服务沧州纵横人才网
  • 甘家口网站建设企业内部门户网站建设方案
  • 蚌埠seo招聘淮安网站seo
  • 中国铁工建设有限公司网站注册公司核名查询系统
  • 自己公司怎样做免费的网站安卓开发者官网
  • 山西公司响应式网站建设平台wordpress网站换字体
  • 做网站公司-深圳信科昆明网站建设手机版