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

リストビューのヘッダのディバイダドラッ...
 
通知
すべてクリア

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


ark
 ark
(@ark)
ゲスト
結合: 23年前
投稿: 4
Topic starter  

開発環境 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
 ark
(@ark)
ゲスト
結合: 23年前
投稿: 4
Topic starter  

すいません。。以下のSubclassDlgItem()が失敗してました。。
> /* m_List - CListCtrlの派生クラス(CMyListCtrl) */
> m_List.SubclassDlgItem( 0, this );

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


返信引用
PATIO
(@patio)
Famed Member
結合: 4年前
投稿: 2660
 

質問を継続するつもりが無いのでしたら解決にして下さい。
放置していると取られますよ。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました