社区
界面
帖子详情
怎样显示第二个鼠标光标?(400分求一解)
cnss
2005-04-05 02:48:13
我想在程序的CView里显示另一个鼠标光标,它的位置是由我的程序控制的.
查了办天MSDN,好象没有这样的API.
我想了一个办法是用GDI/双缓冲,当CView重绘或光标改变位置时手绘在缓冲区内,不过这样性能恐怕不会太好.
还有什么办法吗?最好能用API解决,400分送上!
...全文
393
27
打赏
收藏
怎样显示第二个鼠标光标?(400分求一解)
我想在程序的CView里显示另一个鼠标光标,它的位置是由我的程序控制的. 查了办天MSDN,好象没有这样的API. 我想了一个办法是用GDI/双缓冲,当CView重绘或光标改变位置时手绘在缓冲区内,不过这样性能恐怕不会太好. 还有什么办法吗?最好能用API解决,400分送上!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
27 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lizifong
2005-04-19
打赏
举报
回复
void CTestDlg::OnBnClickedBtnimitate()
{
POINT lpPoint;
CRect rc;
CWnd* pParent = AfxGetApp()->GetMainWnd();
pParent->GetWindowRect(&rc);
lpPoint.x = rc.right-250;
lpPoint.y = rc.top +5;
SetCursorPos(lpPoint.x, lpPoint.y);
mouse_event(MOUSEEVENTF_RIGHTDOWN,0,0,0,0);
mouse_event(MOUSEEVENTF_RIGHTUP,0,0,0,0);
}
mouse_event //API of system
lizifong
2005-04-19
打赏
举报
回复
鼠标好像只能改变形状,它当前的位置只受用户控制.
一个程序中最多允许有5个DC在工作,就像有一个编辑框在获得焦点的情况下,总有个插入符在闪动;此时你移动鼠标,这个插入符的闪动不会受影响.
只要有数据,画一个鼠标应该不成问题,自定义一个绘图函数用来绘制光标,设置一个定时器间断地调用它,注意刷新区域就行了.
mousefj
2005-04-19
打赏
举报
回复
模拟鼠标吧,自己制作一个贯标文件Load进来,然后在视图中显示
xhzxlqt
2005-04-19
打赏
举报
回复
你可以使用鼠标钩子,程序启动时挂上钩子,退出时xie掉钩子.当有WM_MOUSEMOVE时,检查GetActiveWindow是否是本程序窗口,是则钩子在CView里画另一个"鼠标"(用位图保存原内容,画鼠标,下次画前先恢复曾经保存的内容)
wolfman
2005-04-14
打赏
举报
回复
既然 “它的位置是由我的程序控制的.”,那么就不是 “鼠标光标”,只是一张小图而已;
至于你是否把它画成一个类似于“鼠标光标”的图,那是你的事,也不能把它和光标放在一起谈。
你的情况,一般的做法是,在view的OnDraw函数的最后,根据你确定的位置,画出你的图(用什么方法都可以,用BitBlt是最快的),再在你需要更新的地方调用view 的 InvalidateRect(rcUpdate),rcUpdate就和你的“光标”相关!
至于是否闪烁,只有你做出来之后才知道!
liuduofu
2005-04-14
打赏
举报
回复
关注中
truewill
2005-04-12
打赏
举报
回复
windows好像不支持两个鼠标吧……
surstar
2005-04-12
打赏
举报
回复
不知道,顶
wangk
2005-04-12
打赏
举报
回复
在CView中DirectDraw好像不大适合吧?
lonenomad
2005-04-12
打赏
举报
回复
我也在问这个问题,不过我是的在同一个视图内,不同的区域,设了不同的光标后,闪动的问题。
我用::SetCursor(m_hCursor);设的光标。
fanqing
2005-04-12
打赏
举报
回复
暂时没发现有这样的函数..
xhzxlqt
2005-04-12
打赏
举报
回复
请注意:
首先:个人觉得这里的好多问题本不是问题,问题一在于如何稍稍动还是不动一下脑子;问题二在于遇上问题时如何换一个脑筋来思考问题.
其次:对于本问题,我的解答是
1.概念错误:不是第二个鼠标光标,永远只有一个鼠标光标(至少到目前为止是这样),应当是另外模拟一个光标
2.既然是模拟光标,即是自己如何去画这个光标的问题
3.3ms内的变化,人的肉眼是不可能分辨得出的(除非有特异功能),正常情况人眼的视觉延迟是0.1S(即为何电视或者电影用30f/s甚至25f/s就可以了)
4.你可以设置定时器(定时为100ms就可以了)来检测光标的变化,使用双缓冲绘图来解决闪烁的问题(其实DirectX也是使用双或多缓冲绘图来解决闪烁问题的,如果不使用双缓冲即使你使用所谓的DirectX也同样闪烁)
5.如楼上所言,你用文档/视图类,还用DirectX是很难实现的,如果使用DirectX你就等于是在写游戏程序了
lsvine
2005-04-12
打赏
举报
回复
gz
dhlyb
2005-04-12
打赏
举报
回复
初学者 顶
angelcool
2005-04-12
打赏
举报
回复
技术上应该是可行的。
我也曾想这样做,只是未能付诸实践。
希望楼主能解决!!那我也可以顺便搞定了!!
时刻关注!!!
BIGDOG
2005-04-12
打赏
举报
回复
用BMP算了!然后用BitBlt画!BitBlt速度很快的!
afu1983
2005-04-11
打赏
举报
回复
关注
cnss
2005-04-05
打赏
举报
回复
是啊,我就怕自己画性能不行,曾考虑用DirectDraw,不过原来没接触过这方面的东西
thisisll
2005-04-05
打赏
举报
回复
既然是你程序管的
那你就把他自己画出来
画的跟鼠标一样
反正别人又看不出来
效果都一样
cnss
2005-04-05
打赏
举报
回复
因为我是重播鼠标的轨迹,最短的时候3毫秒就要移动一次光标,用GDI会不会性能跟不上
用DirectDraw做这事容易吗?
加载更多回复(4)
java 移动
鼠标
光标
本文介绍如何在Java中使用AWT和Swing库实现
鼠标
光标
的移动。通过Robot类可以直接控制
鼠标
位置,Swing库则利用MouseEvent监听实现。适用于游戏开发、图形编辑等场景。
java 系统
光标
状态_java等待
光标
显示
问题
博主在Java应用程序中遇到等待
光标
显示
的问题。当
鼠标
进入定义了自定义
光标
的面板时,等待
光标
无法正常
显示
。通过提供SSCE详细展示了问题,并询问如何解决无需关注具体面板的
光标
管理问题。
js 限制
鼠标
移动范围
这篇博客介绍了如何使用JavaScript监听
鼠标
移入移出事件来限制
鼠标
在特定DOM元素内的活动。当
鼠标
移入时,允许
鼠标
事件并
显示
光标
;移出时,隐藏
光标
并禁用
鼠标
事件。通过CSS的cursor属性改变
光标
样式,例如使用'auto'和'none'。此外,还探讨了更进一步的拓展,如禁用
鼠标
功能和限制
鼠标
移动到边界等技术。
设置窗体的
鼠标
光标
- Java实现
本文介绍了在Java中使用AWT和Swing库设置窗体
鼠标
光标
的步骤。通过示例代码展示了如何设置十字
光标
以及创建和使用自定义
光标
,强调了
光标
图像的要求和设置热点位置的重要性。
设置Java窗体的
鼠标
光标
样式
本文介绍了如何在Java应用程序中使用AWT或Swing设置窗体的
鼠标
光标
样式,通过创建自定义
光标
并设置其热点位置,以增强用户交互体验。
界面
15,976
社区成员
115,866
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章