サイズ変更可能な CListCtrl があり、アイテムが部分的に表示されるのを避けたいと思っています。
例えば:
この場合、項目 9 を表示しないようにします。このためのフラグまたはメソッドはありますか? この問題をどのように解決しますか?
私は次のことを試しましたが、うまくいきませんでした:
void CMyCListCtrl::OnEndScrolling()
{
int iCount = this->GetCountPerPage();
EnsureVisible(iCount - 1, FALSE);
}
捕まえた後
...
ON_NOTIFY( LVN_ENDSCROLL, IDC_LIST1, OnEndScroll )
...
void CWheelTestDlg::OnEndScroll(NMHDR* pNMHDR, LRESULT* pResult)
{
LPNMLVSCROLL pnmLVScroll = (LPNMLVSCROLL) pNMHDR;
m_MyListCtrl.OnEndScrolling();
*pResult = 0;
}
CListCtrl 親ダイアログで。(これはやりたくありません。可能であれば、CListCtrl 派生クラスでのみすべてを実行したいと考えています)。
アイテム 9 を完全に表示するだけですが、アイテム 10 はその下に部分的に表示されています。30 個のアイテムがある場合、リストをスクロールしてアイテム 30 を表示したくない場合は、アイテム 8 まで表示し、その下に部分的に表示されるアイテムを表示したくありません。