鼠标移到CBitmanpButton按钮上时,按钮图片就变为另一幅图片,怎么实现?

xiaciping 2006-07-14 12:02:27
对话框上有多个CBtimapButton类的按钮,怎么样才能扑获到鼠标是在某个按钮上面,这时就改变此按钮上的图片。
void CTstBmpDlg::OnMouseMove(UINT nFlags, CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值

CDialog::OnMouseMove(nFlags, point);
}
...全文
332 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
jzjking 2006-07-18
  • 打赏
  • 举报
回复
PostMessage(WM_PAINT);
richmain 2006-07-18
  • 打赏
  • 举报
回复
afx_msg BOOL CWnd::OnSetCursor(
CWnd* pWnd,
UINT nHitTest,
UINT message
)
{
...
}
PackChen 2006-07-15
  • 打赏
  • 举报
回复
使用TrackMouse监听CM_MOUSELEAVE事件就可以了
pp7765 2006-07-15
  • 打赏
  • 举报
回复
楼上说的不错
healer_kx 2006-07-14
  • 打赏
  • 举报
回复
LoadBitamp换成别的图片呗。

通常我把这些事情放到自绘里面做。
xiaciping 2006-07-14
  • 打赏
  • 举报
回复
CBitmapButton按钮只实现了鼠标的DOWN,UP,FOCUS,DISABLED,但没有鼠标的OVER消息,所以要在OnMouseOver中实现图片改变,应该怎么判断鼠标是在哪个按钮上?
zengwenfu 2006-07-14
  • 打赏
  • 举报
回复
响应PreTranslateMessage消息。
判断pMsg是否是WM_MOUSEMOVE消息。
获得当前鼠标在屏幕的坐标 ::GetCursorPos(&point);
转为客户区坐标 ::ScreenToClient(this->m_hWnd,&point);
判断当前坐标上的控件 hwnd=::ChildWindowFromPoint(this->m_hWnd,point);
如果是你想要显示其他图片的控件那么就执行转化成另外一张图片的操作
chib 2006-07-14
  • 打赏
  • 举报
回复
www.codeproject.com上面有现成的
内容概要:本文系统研究了构网型变流器的正负序阻抗解耦特性及其在弱电网环境下的稳定性表现,重点依托Matlab/Simulink仿真平台,构建了详细的阻抗数学模型,设计了解耦控制策略,并采用小信号扫频法进行频域辨识与稳定性验证。研究深入探讨了构网型变流器与传统跟网型逆变器在正负序阻抗特性上的本质差异,结合虚拟同步发电机(VSG)等先进控制技术,分析其在抑制宽频带振荡、削弱锁相环动态耦合等方面的优越性。文中不仅提供了完整的仿真模型与MATLAB代码实现,还整合了光伏、风电、储能、微电网等多类新能源系统的阻抗建模与稳定性分析资源,形成了一套面向新型电力系统稳定性的综合性技术资料体系,具有较强的科研复现与工程参考价值。; 适合人群:面向具备电力电子、电力系统自动化、新能源并网等专业背景的研究生、高校教师及工程技术人员,特别适用于从事阻抗建模、小干扰稳定性分析、宽频振荡机理研究以及撰写高水平学术论文的科研工作者。; 使用场景及目标:①掌握构网型变流器正负序阻抗建模与扫频辨识的仿真方法;②深入理解VSG等构网型控制在弱电网中提升稳定性的内在机理;③复现顶刊论文中的阻抗分析流程与稳定性判据应用;④利用提供的成熟模型与代码加速科研进程,支撑课题研究与学术成果产出。; 阅读建议:建议结合文中提供的Simulink模型与MATLAB代码,按照“理论建模—仿真搭建—扫频激励—频响提取—Nyquist判据分析”的完整流程进行实践操作,重点关注扫频信号的注入方式、频率范围设置及阻抗曲线的物理意义解读,并参考博士论文复现案例深化对复杂动态耦合问题的理解。

15,976

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧