現在、DelphiはFileListBoxのアイテムをアルファベット順とファイルの長さでソートしています。Delphi 7 | FileListBoxアイテムの並べ替え
アルファベット順に並べるだけの可能性はありますか?
現在、DelphiはFileListBoxのアイテムをアルファベット順とファイルの長さでソートしています。Delphi 7 | FileListBoxアイテムの並べ替え
アルファベット順に並べるだけの可能性はありますか?
なぜそれが何をしているのか(FileListBoxが使用している数値ストリングソートと古いDOSディレクトリウォーキングルーチンを参照しています)について、長らく説明できませんが、おそらくこのコンテキストでは過剰です。
短い答えは、あなたが自分でそれを望むようにソートする必要があることです。 FileListBoxの場合は、仮想ReadFileNamesメソッドをオーバーライドする子孫クラスを作成し、ファイルの読み込みと並べ替えが必要なことを意味します。
新しいコンポーネントを作成することなく簡単に同じ効果を得るには、Windowsエクスプローラの動作をより厳密にエミュレートするTShellListViewコントロールに切り替えます。
HTH
長すぎる説明やDOSは必要ありません。それは単純な辞書順に並べられる。確かに 'aa' <'b'と同じように'11 '<' 2 'であることに感謝します –
はい、私が作っていた(またはしようとしている、おそらくはっきりしていない)点は、従来のDOSベースのファイル名検索ルーチンを使用した場合のASCII ASCII辞書形式のソートだということでした。別のものを得るためには、あなた自身の並べ替えを行う必要があります。 Windows Shellベースのルーチンを使用すると、エクスプローラに表示されているものに似たものが得られますが、これはOPが期待していると思います。 – user44760
どういう違いがありますか?あなたの要求がFredとFred1の間で何らかのランダムな順序を与えることを除いて。それのポイントは何ですか?私はあなたが彼らが元の順序で維持することを望んでいるが、それらを平等にすることがそれを保証するものではないと思う。 – Dsm
*アルファベット順とファイル*の長さはどういう意味ですか?長さはソート順にどのように影響しますか? –
これは意味がありません。いずれの場合でも、ファイルリストボックスコントロールを使用しないでください。適切なシェルリストビューを使用してください。 –