Delphi XE5の新機能「TListViewのビルトイン検索フィルタリング」を試してみた

フォームにTListViewとTButtonを配置します。

001

フォームのOnCreateイベントでTListViewの項目の初期設定を行います。

procedure TForm1.FormCreate(Sender: TObject);
const
  Books: array [0 .. 4] of string = (
    'Delphiでかんたん iOSアプリプログラミング',
    'Delphi XE2プログラミング入門',
    'ここから始まる画像ビューアーの作り方 by DelphiXE',
    '土木建築エンジニアのプログラミング入門',
    'Delphi 2009 handbook');
var
  Book: string;
begin
  for Book in Books do
  begin
    ListView1.Items.Add.Text := Book;
  end;
end;

Button1のOnClickイベントで検索フィルタリングを行います。

procedure TForm1.Button1Click(Sender: TObject);
var
  SearchResponder: ISearchResponder;
begin
  SearchResponder := ListView1 as ISearchResponder;
  SearchResponder.SetFilterPredicate(
    function(Arg: string): Boolean
    begin
      Result := Arg.StartsWith('Delphi');
    end);
end;

アプリケーションを実行します。

002

ボタンを押します。

003

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です