掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
五十音順に並べ替えて番号をつけるには (ID:46891)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
少しイメージが付きやすいよう、コードを書いてみました。 生徒が5人だけいることを前提としています。 処理としては、生徒1人1人の情報をすべて別々のStringListに格納して、 そのStringListを、ソート用のStringListにAddObjectして登録し、ソート をかけるというものです。 コンパイルが通るものでもないですが、イメージは少しつかんでもらえると 思います。 SL1 := TStringList.Create; for i := 1 to 5 do begin SL2 := TStringList.Create; SL2.Add(生徒名i); SL2.Add(生徒カナ名i); SL2.Add(性別i); SL1.AddObject(置換後の生徒カナ名i, SL2); // ←ここのカナ名は、例えば「ー」を「亜」などに置き換えたもの。 end; SL1.Sort; for i := 0 to SL1.Count - 1 do begin SL2 := TStringList(SL1.Objects[i]); ShowMessage(IntToStr(i) + '番目の生徒の名前は' + SL2[0] + 'で、性別は' + SL2[1] 'です。'); // 必要ならここで番号を振るなどする。 SL2.Free; end; SL1.Free;
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.