tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板 [ツリー表示へ]   [Home]
一括表示(VB6.0)
タイトルリストビューの並べ替え
記事No11360
投稿日: 2008/02/08(Fri) 15:21
投稿者みいさん
リストビューにアイテムを追加後、並べ替えしていますが、
以下のコードではソートはされず、最終行へ追加されます。

しかし、(*)の場所で一旦ブレイクすると、結果はちゃんと
ソートしてくれます。
こんな場合は、何か対応策はないでしょうか?


Set obItem = Me.ListView1.ListItems.Add()

obItem.Text = Me.Text1.Text
obItem.SubItems(1) = Me.Text2.Text
obItem.SubItems(2) = Me.Text3.Text
obItem.SubItems(3) = Me.Text4.Text
  
Set obItem = Nothing

ListView1.Sorted = True   '(*)<===ここでブレイク
ListView1.SortKey = 3
ListView1.SortOrder = lvwAscending
ListView1.Sorted = False

[ツリー表示へ]
タイトルRe: リストビューの並べ替え
記事No11364
投稿日: 2008/02/08(Fri) 17:33
投稿者みいさん
ちなみに、ブレイクポイントにメッセージボックスを置くと
うまくいきました。

本当は、メッセージは出したくないんですが。。。

[ツリー表示へ]
タイトルRe: リストビューの並べ替え
記事No11365
投稿日: 2008/02/08(Fri) 18:00
投稿者魔界の仮面弁士
> こんな場合は、何か対応策はないでしょうか?

当方では再現しませんでした。

とりあえず、ソート直前に「ListView1.Refresh」あるいは「DoEvents」を
呼びだしてみては如何でしょう。

[ツリー表示へ]
タイトルRe^2: リストビューの並べ替え
記事No11392
投稿日: 2008/02/12(Tue) 08:23
投稿者みいさん
「ListView1.Refresh」

でうまくいきました。
ありがとうございました。

[ツリー表示へ]