掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
MFCのリストビューで列幅を固定するには? (ID:72910)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> 列幅をドラッグしてもOnHdnBegintrackList1関数が呼ばれてくれません 普通は呼ばれると思うので、普通じゃない事が起こってるんではなかろうか。 > また、列幅固定のその他の方法などございましたら教えて下さい。 動作環境がvista以降であるならば、リストビューのヘッダコントロールに HDS_NOSIZING(0x0800)スタイルを設定してやれば良い。 xp以前ならば、リストビューのヘッダコントロールの ・HDN_BEGINTRACKA ・HDN_BEGINTRACKW ・HDN_DIVIDERDBLCLICKA ・HDN_DIVIDERDBLCLICKW に対応するハンドラで *pResult に 1 を指定してやれば良い。 上記だけでは(実際のサイズ変更は禁止できるが)マウスカーソルが「変更可能です」カーソルに変わるのはそのままなので、 ヘッダコントロールの WM_SETCURSOR に対応したハンドラでマウスカーソルを自分で指定してやれば良い。 BOOL myCHeaderCtrl::OnSetCursor(...) { HCURSOR cursor = HCURSOR(::GetClassLongPtr(m_hWnd, GCLP_HCURSOR)); if (cursor == NULL) { cursor = ::LoadCursor(NULL, IDC_ARROW); } ::SetCursor(cursor); return TRUE; }
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.