是否有任何方法可以区分a的向上或向下箭头CSpinButtonCtrl?
我正在尝试使用这个OnPointerdown活动,但我不知道怎么做...
afx_msg LRESULT CMySpinButtonCtrl::OnPointerdown(WPARAM wParam, LPARAM lParam)
{
if(IS_POINTER_PRIMARY_WPARAM(wParam))
{
//TODO
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我会感激任何帮助.
是否有任何方法可以区分a的向上或向下箭头
CSpinButtonCtrl?
你应该UDN_DELTAPOS这样做.
UDN_DELTAPOS消息,然后单击添加和编辑:您将获得骨架代码:
void CMFCApplication1Dlg::OnDeltaposSpin1(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMUPDOWN pNMUpDown = reinterpret_cast<LPNMUPDOWN>(pNMHDR);
// TODO: Add your control notification handler code here
*pResult = 0;
}
Run Code Online (Sandbox Code Playgroud)该NMUPDOWN文章解释了关于您所使用的结构.你需要做的是测试iDelta价值.例:
void CColumnOrderDlg::OnDeltaposSpinColumns(NMHDR* pNMHDR, LRESULT* pResult)
{
LPNMUPDOWN pNMUpDown = reinterpret_cast<LPNMUPDOWN>(pNMHDR);
if (pNMUpDown != nullptr)
{
if( pNMUpDown->iDelta > 0)
// Up - Do stuff;
else if(pNMUpDown->iDelta < 0)
// Down - Do stuff;
}
*pResult = 0;
}
Run Code Online (Sandbox Code Playgroud)这里还有一篇有用的文章,其中指出:
如果您将旋转控件用于其他目的,例如,浏览一系列窗口或对话框,则为该
UDN_DELTAPOS消息添加处理程序并在那里执行自定义操作.
| 归档时间: |
|
| 查看次数: |
705 次 |
| 最近记录: |