怎么处理CSplitterWnd的滚动条事件?? 本帖最后由 xychzh 于 2010-11-04 14:54:08 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 void CGameTileMapEditorView::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar) { CGameTileMapEditorDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); if (!pDoc) return; RECT rcMapView; this->GetClientRect(&rcMapView); int mapMaxOffsetX = pDoc->m_MapWidth - rcMapView.right; int mapMaxOffsetY = pDoc->m_MapHeight - rcMapView.bottom; int CurPos = GetScrollPos(SB_VERT); switch(nSBCode) { // 向上滚动一个位置 case SB_LINEUP: CurPos--; break; // 向下滚动一个位置 case SB_LINEDOWN: CurPos++; break; // 向上滚动一页 case SB_PAGEUP: CurPos -= 10; break; // 向下滚动一页 case SB_PAGEDOWN: CurPos += 10; break; // 滚动到最上边 case SB_TOP: CurPos = 0; break; // 滚动到最下边 case SB_BOTTOM: CurPos = mapMaxOffsetX; break; // 滚动到一个绝对位置。当前位置在nPos中指定 case SB_THUMBPOSITION: CurPos = nPos; break; // 将滚动块拖动到指定的位置。当前的位置由nPos参数指定 case SB_THUMBTRACK: CurPos = nPos; // 滚动条拖动结束(松开鼠标) case SB_ENDSCROLL: break; } SetScrollPos(SB_VERT, CurPos); pDoc->UpdateMiniMapInfo(pDoc->m_MapPos.x, -CurPos); CView::OnVScroll(nSBCode, nPos, pScrollBar);}一个函数都没人愿意帮忙贴一下- -。散分。 窗体单击最大化按钮就全屏,怎么设置能正常情况呢? BeyondCompare的TXListBox控件怎么做的? 求东西!!! (100送高手)二进制文件搜寻多个二进制串的方法! 插入null,不要0,怎么做? 小弟初学COM,向高手请教! 自动化的COM组件为什么没有实现类工厂,AddRef(),QueryInterface(),Release() 怎样枚举windows的所有分区? 弹出一个对话框后自动执行一个函数,这个函数加在哪个位置比较好! 问个问题,这那里有问题呢?opencv “等号”的操作符重载问题 新年第一帖子,关于视频服务器二次开发 请教高手
void CGameTileMapEditorView::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
CGameTileMapEditorDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
if (!pDoc)
return; RECT rcMapView;
this->GetClientRect(&rcMapView);
int mapMaxOffsetX = pDoc->m_MapWidth - rcMapView.right;
int mapMaxOffsetY = pDoc->m_MapHeight - rcMapView.bottom;
int CurPos = GetScrollPos(SB_VERT); switch(nSBCode)
{
// 向上滚动一个位置
case SB_LINEUP:
CurPos--;
break;
// 向下滚动一个位置
case SB_LINEDOWN:
CurPos++;
break;
// 向上滚动一页
case SB_PAGEUP:
CurPos -= 10;
break;
// 向下滚动一页
case SB_PAGEDOWN:
CurPos += 10;
break;
// 滚动到最上边
case SB_TOP:
CurPos = 0;
break;
// 滚动到最下边
case SB_BOTTOM:
CurPos = mapMaxOffsetX;
break;
// 滚动到一个绝对位置。当前位置在nPos中指定
case SB_THUMBPOSITION:
CurPos = nPos;
break;
// 将滚动块拖动到指定的位置。当前的位置由nPos参数指定
case SB_THUMBTRACK:
CurPos = nPos;
// 滚动条拖动结束(松开鼠标)
case SB_ENDSCROLL:
break;
} SetScrollPos(SB_VERT, CurPos);
pDoc->UpdateMiniMapInfo(pDoc->m_MapPos.x, -CurPos); CView::OnVScroll(nSBCode, nPos, pScrollBar);
}一个函数都没人愿意帮忙贴一下- -。
散分。