リストビューのヘッダのディバイダドラッグ禁止方法について

[戻る]
ark 2002/09/22(日) 01:22:07
開発環境 W2K(SP2) VC6.0(SP5) MFC

リスト(レポート)ビューで、ヘッダのディバイダドラッグを
禁止するようにしたいと思っています。
Web上等でいろいろ調べた結果、CListCtrlクラスの派生クラス
を作成し、HDN_BEGINTRACKをハンドリングすることで実現でき
る、とあったので実際やってみたのですが、うまくいきません。

やっている処理は以下の通りです。
-------------------------------------------------------------------
void CTestView::OnInitialUpdate()
{
    CListView::OnInitialUpdate();

    /* m_List - CListCtrlの派生クラス(CMyListCtrl) */
    m_List.SubclassDlgItem( 0, this );

    CListCtrl& List    = GetListCtrl();

    List.ModifyStyle( 0, LVS_REPORT );

    List.InsertColumn( 0, "test1");
    List.InsertColumn( 1, "test2");
    List.InsertColumn( 2, "test3");
}


void CMyListCtrl::OnBegintrack(NMHDR* pNMHDR, LRESULT* pResult) 
{
    HD_NOTIFY *phdn = (HD_NOTIFY *) pNMHDR;
    *pResult = 1;  // ドラッグ禁止
}
-------------------------------------------------------------------

どこかおかしな点があるのでしょうか?
ちなみにOnBegintrack()内にブレイクを張ったのですが、止まりません
でした。。イベントがきていないのでしょうか。。

ご存知の方、どうかご教授お願いいたします。

ark 2002/09/22(日) 01:53:23
すいません。。以下のSubclassDlgItem()が失敗してました。。
>   /* m_List - CListCtrlの派生クラス(CMyListCtrl) */
>   m_List.SubclassDlgItem( 0, this );

エラーチェックし忘れていました。。
もう少し、勉強します。。

PATIO 2002/09/24(火) 11:34:49
質問を継続するつもりが無いのでしたら解決にして下さい。
放置していると取られますよ。

古いスレッドには追加発言できません。