- 締切済み
LISTBOX 後から LBS_SORT を追加
リストボックスを LBS_SORT のスタイルを指定せずに 作成して、後で LBS_SORT を追加したんだけど、 ソートスタイルになりませんでした。 後から LBS_SORT を追加しても意味がないんですか? できなかったのは、ソースの書き方が間違っていたから かもしれないと思って質問しました。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
>書いてくれたことがよく分からなかったんだけど、 >後からソートスタイルにしても意味がなかったという >ことですか? ほかに何の質問をしていたのだろう? ソースが合ってるかどうかは、ソースを載せれば良い だろうし。 とりあえず LB_ADDSTRING・・・MFCならCListBox::AddString() Spy・・・VisualStudioのツール、実行ウィンドウの スタイルやメッセージのキャプチャをできる ぐらいで。 ソートスタイルを後から追加すると、その瞬間に既にある 中身がソートされる? かえって難しい動きのような。 できたらいいね。こっちは自分の日本語をソートするので 精一杯です、健闘をお祈りします。じゃ
多分アイテム全体をソートする処理が無いからではないか という気がします。 リストボックスのソートは LB_ADDSTRING 時に比較関数を 呼び出しているものらしいので、アイテム追加を行った後 など、初期状態以外の状況でソート設定を変えても対応が 適わないのではないかと。 リストボックスのソートをデザイン時以外でやったことは なかったのですが、確かに試してみてもできないような 感じです。 設定したコーディングが正確に反映されているかどうかは Spy などでわかると思いますので、とりあえずそんな感じ です
補足
ありがとうございます。 書いてくれたことがよく分からなかったんだけど、 後からソートスタイルにしても意味がなかったということですか?