お知らせ

電子会議

ライブラリ

パレット

Delphi FAQ検索

Delphi FAQ一覧

サンプル蔵





FDelphi FAQ
16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル

"RE:履歴保存ComboBox"

この発言は
#00515 U10 さんの履歴保存ComboBox
に対するコメントです

U10 さん、はじめまして。HATENA です。 添削というわけでは、ないですが同様な処理をしたことがありますので、 コメントさせていただきます。 保存する履歴の最大数を設定できるようにしました。 procedure TForm1.ComboBox1KeyPress(Sender: TObject; var Key: Char); var i: integer; begin If Key = Chr(Vk_Return) then begin //リターンキーが押されたら i := ComboBox1.Items.IndexOf(ComboBox1.Text); //同じのがあるか検索 If i >= 0 Then begin //あったら // ComboBox1.Items.Insert(0,ComboBox1.Text); //リストの最初に登録して // ComboBox1.Items.Delete(i+1); //古いのを消す {上の2行は Move を使えば1行ですみます。} ComboBox1.Items.Move(i, 0); //一致したデータを先頭に移動 // ComboBox1.Text := ComboBox1.Items[0]; //テキストを書き直す {IndexOf でデータは一致してますのでこの行は、なくてもいい気がしますが。} end Else //なければ ComboBox1.Items.Insert(0,ComboBox1.Text); //リストの最初に登録する {履歴の最大数の設定処理。} if ComboBox1.Items.Count > 20 then //履歴が 20以上なら ComboBox1.Items.Delete(20); //削除する end; end; 98/04/29(水) 03:43 HATENA(GFC03235@niftyserve.or.jp) ☆彡はてな倶楽部 http://www2s.biglobe.ne.jp/~hatena/ ☆彡 ClipBase V1.61,NifRes32 V1.28 etc.公開中 ☆彡 Delphiプログラミング入門講座 連載中 談話室あり Original document by HATENA 氏 ID:(GFC03235)



ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。

Copyright 1996-2002 Delphi Users' Forum