ようこそ ゲスト さん、新規登録(無料)して気になる疑問を解決しませんか?

質問

質問者:w0a15455 LVS_EX_FULLROWSELECTが効かない
困り度:
  • すぐに回答を!
LVS_EX_FULLROWSELECTをリストコントロールに指定して、一行選択をしたいのですが、なぜか効きません。なぜでしょうか?

ソース−−−−−−−−−−−−−−−−
BOOL CXXXXXX::OnInitDialog()
{
CPropertyPage::OnInitDialog();

ListView_SetExtendedListViewStyle( m_LIST.m_hWnd , LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT | LVS_EX_ONECLICKACTIVATE | LVS_EX_UNDERLINEHOT );
・・・・・
}
プロパティページ内にリストコントロールを貼り付けて使っています。
よろしくお願いします。
質問投稿日時:08/03/28 16:21
質問番号:3902287
この質問に対する回答は締め切られました。
最新から表示回答順に表示良回答のみ表示

回答

良回答20pt

回答者:taku2888 ウィンドウが表示された直後で何もしなければ
フォームにフォーカスがあたってる可能性が一番ですか・・

なので、OnInitDialog() の後ろの方で
ListView.SetFocus(); してみたらいかがですか。
種類:アドバイス
どんな人:専門家
自信:参考意見
回答日時:08/04/03 14:37
回答番号:No.3
この回答へのお礼この回答にお礼をつける(質問者のみ)

回答

 

回答者:taku2888 カーソルキーの「↑」「↓」動かしてセルが移動できれば
Focusがあたってます。

NM_SETFOCUSとか通っても最終どうなってるのか不明です。
種類:アドバイス
どんな人:専門家
自信:参考意見
回答日時:08/04/02 15:07
回答番号:No.2
この回答への補足ご指摘ありがとうございます。

カーソルキーの「↑」「↓」動かしてみましたが、移動しませんでした。
これは、フォーカスが当たっていないってことですよね。
なぜ、こうなるのでしょうか?
回避方法を探してみます。
この回答へのお礼この回答にお礼をつける(質問者のみ)

回答

 

回答者:taku2888 どの様な仕様か不明ですが、
LVS_EX_FULLROWSELECTは、そのリストコントロールにフォーカスが当たっていないと機能しないと思われますが。

その条件でもダメでしょうか。
種類:アドバイス
どんな人:専門家
自信:参考意見
回答日時:08/03/28 20:04
回答番号:No.1
この回答へのお礼返事が遅くなって、申し訳ありません。
出張に出てしまって。

NM_SETFOCUSで、フォーカスが当たっているのを確認したのですが、
ここは、通っているので、フォーカスは、当たっていると判断しました。
もう少し調べてみます。
 
最新から表示回答順に表示良回答のみ表示