标题:[求助]如下代码很简单,但无法达到预期功能,为什么啊?
只看楼主
boybay
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-6-8
 问题点数:0 回复次数:2 
[求助]如下代码很简单,但无法达到预期功能,为什么啊?

在对话框上创建了两个按钮控件,这段代码的功能是鼠标移动到其中一个控件上面时隐藏这个控件,同时显示另外一个按钮控件。其中m_rect1和m_rect2为两个CRect变量
目前的问题是只有鼠标移动到控件的bottom和right上时才能隐藏控件,其余地方均无反应,不知为何

void CTestDlg::OnMouseMove(UINT nFlags, CPoint point)
{
GetDlgItem(IDC_BUTTON1)->GetWindowRect(&m_rect1);
GetDlgItem(IDC_BUTTON2)->GetWindowRect(&m_rect2);
ClientToScreen(&point);
if((m_rect1.left<=point.x)&&(point.x<=m_rect1.right)&&(m_rect1.top<=point.y)&&(point.y<=m_rect1.bottom))
{
GetDlgItem(IDC_BUTTON1)->ShowWindow(SW_HIDE);
GetDlgItem(IDC_BUTTON2)->ShowWindow(SW_SHOWNORMAL);
}
else if((m_rect2.left<=point.x)&&(point.x<=m_rect2.right)&&(m_rect2.top<=point.y)&&(point.y<=m_rect2.bottom))
{
GetDlgItem(IDC_BUTTON2)->ShowWindow(SW_HIDE);
GetDlgItem(IDC_BUTTON1)->ShowWindow(SW_SHOWNORMAL);
}

CDialog::OnMouseMove(nFlags, point);
}

搜索更多相关主题的帖子: 鼠标 控件 point 
2006-11-24 12:34
dragonfly
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:1024
专家分:0
注 册:2006-3-20
得分:0 
CTestDlg::OnMouseMove 显然是 CTestDlg的事件, 鼠标在IDC_BUTTON1 和 IDC_BUTTON2 上移动不会触发这个事件,
对否?

[此贴子已经被作者于2006-11-24 12:50:59编辑过]


2006-11-24 12:50
smartwind
Rank: 1
等 级:新手上路
威 望:1
帖 子:277
专家分:0
注 册:2006-11-13
得分:0 

这段程序没发现什么问题,也许是消息传递有误


2006-11-24 16:53



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-105072-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.790946 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved