永发信息网

vc++实现员工类

答案:1  悬赏:20  手机版
解决时间 2021-07-30 21:19
  • 提问者网友:感性作祟
  • 2021-07-30 13:01

(person)员工类

-------------------------------------------------------------------
|人员 | 固定工资 | 记时 | 工资年增长 | 销售提成|
--------------------------------------------------------------------------
|管理员 | 有 | 无 | 有 | 无 |
--------------------------------------------------------------------------
|工人 | 有 | 有 | 有 | 无 |
--------------------------------------------------------------------------
|销售经理| 有 | 无 | 有 | 有 |
---------------------------------------------------------------------------
|销售员 | 无 | 无 | 有 | 有 |
---------------------------------------------------------------------------


抽取计算工资的基类person,将其定义为虚函数,manager.worker.sale.由
person派生,salemanager由manager和sale派生。员工数量不确定,可以动态
添加。各功能最好单独实现!

最佳答案
  • 五星知识达人网友:山河有幸埋战骨
  • 2021-07-30 13:34
对于一个对话框来说 ,可以 处理WM_MOUSEMOVE消息
然后在 OnMouseMove(UINT nFlags, CPoint point)
的第二个参数 point 就是鼠标的坐标
但是 这个并不是很好用,因为这个point 得到的坐标值的原点(0.0)是相对 这个对话框的,而不是 整个 屏幕的。要想得到整个屏幕的鼠标坐标,
建议在这个OnMouseMove过程中 添加
POINT point2;
GetCursorPos(&point2);//得到鼠标的位置,相对屏幕的
来得到鼠标的坐标。


还有个问题是,如果你的 的 窗口(对话框)是当前窗口(活动的,最上的,有输入焦点的),当 鼠标指针 移动到 这个 对话框 以外 时候 ,这个对话框就无法获取鼠标 消息了。
解决方法
在适当的位置(如 窗口初始化,按下左键 等等) 调用 这个函数 SetCapture(),这样无论鼠标 在不在 对话框 内 都会 捕获 鼠标 消息,但是一定要记得,不想捕获的时候(窗口摧毁,鼠标左键抬起 等等)使用ReleaseCapture()来释放捕获。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯