请问怎么获得对话框的位置啊?
我想在程序开始时弹出对话框,并且把鼠标控制在对话框的范围内,程序如下:
CRect m_rect;
GetWindowRect(&m_rect);
ClientToScreen(&m_rect);
ClipCursor(&m_rect) ;
可是鼠标被限定到了其他位置(范围和对话框一样大,只是不在对话框上),各位高手帮下忙啊!
问题点数:40、回复次数:7Top
1 楼pomelowu(羽战士)回复于 2004-09-03 20:29:54 得分 0
GetWindowRect获得的本来就是屏幕坐标了,不用ClientToScreenTop
2 楼pomelowu(羽战士)回复于 2004-09-03 20:32:23 得分 0
CRect m_rect;
GetWindowRect(&m_rect);
ClipCursor(&m_rect) ;
Top
3 楼leotangcw1()回复于 2004-09-03 20:41:01 得分 0
我试过了,但是鼠标跑到屏幕的左上角去了,还是不在对话框上。
有别的方法吗?Top
4 楼zj7961767520(大宝)回复于 2004-09-03 20:45:15 得分 0
upTop
5 楼pomelowu(羽战士)回复于 2004-09-03 20:45:34 得分 40
没理由啊。你把ClientToScreen那句注释掉了没?
还有,这几行代码你放在那里的?放到OnPaint里边去看看。Top
6 楼leotangcw1()回复于 2004-09-03 20:55:04 得分 0
谢谢,放在onpaint里就行了,谢谢啊!
我马上加分!Top
7 楼jmlt1983(Harper)回复于 2004-09-03 20:59:49 得分 0
将ClientToScreen()去掉
因为此时得到的rect就是当时客户区所在的区域
我试过了可以实现!
你可以试一试!Top




