
我創建了一個CListCtrl類,之后使用 CScrollBar m_CScrollBar 來控制滾動條的
int CMyListCtrl::OnCreate(LPCREATESTRUCT lpCreateStruct) //這個就是CMyListCtrl類繼承于CListCtrl
{
if (CListCtrl::OnCreate(lpCreateStruct) == -1)
return -1;
// TODO: Add your specialized creation code here
CRect rect;
GetWindowRect(&rect);
ScreenToClient(&rect);
rect.left = rect.right - GetSystemMetrics(SM_CXVSCROLL);
m_CScrollBar.Create(WS_CHILD | WS_VISIBLE | SB_VERT, rect, this, 4051);
m_CScrollBar.EnableScrollBar(ESB_ENABLE_BOTH);
m_CScrollBar.SetScrollRange(0, 1000);
m_CScrollBar.SetScrollPos(500);
return 0;
}
void CMyListCtrl::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
if (4051 == pScrollBar->GetDlgCtrlID())
{
switch (nSBCode)
{
case SB_LINEUP://唯獨就是這個沒有訊息回應
break;
case SB_LINEDOWN:
break;
case SB_PAGEUP:
break;
case SB_PAGEDOWN:
break;
}
}
總之一句話:我用滑鼠點擊上邊箭頭的時候,根本沒有SB_LINEUP訊息
CListCtrl::OnVScroll(nSBCode, nPos, pScrollBar);
}
uj5u.com熱心網友回復:
CListCtrl 自帶 scrollbar 何苦 自己 創建 ?uj5u.com熱心網友回復:
自帶的達不到我想要的功能,所以只能自己創建
uj5u.com熱心網友回復:
客戶區 右邊 小 一個 sb 寬度uj5u.com熱心網友回復:
能拉小?我是在CListCtrl類里面創建的
uj5u.com熱心網友回復:
CListCtrl 創建時 客戶區 可以小一些 (或 MoveWindow)轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/28721.html
標籤:基礎類
