unit DocList;
|
|
interface
|
|
uses
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
Dialogs, ComCtrls, StdCtrls, ExtCtrls,IISUnit;
|
|
type
|
TDocListForm = class(TForm)
|
Panel1: TPanel;
|
OkBt: TButton;
|
CancelBt: TButton;
|
Panel2: TPanel;
|
DocLV: TListView;
|
Panel3: TPanel;
|
Edit1: TEdit;
|
IndexLB: TLabel;
|
procedure OkBtClick(Sender: TObject);
|
procedure CancelBtClick(Sender: TObject);
|
procedure FormCreate(Sender: TObject);
|
procedure DocLVDblClick(Sender: TObject);
|
procedure DocLVColumnClick(Sender: TObject; Column: TListColumn);
|
procedure DocLVCompare(Sender: TObject; Item1, Item2: TListItem;
|
Data: Integer; var Compare: Integer);
|
procedure FormDestroy(Sender: TObject);
|
procedure Edit1Change(Sender: TObject);
|
procedure FormShow(Sender: TObject);
|
private
|
{ Private declarations }
|
public
|
{ Public declarations }
|
FormIDList:TStringlist;
|
end;
|
|
var
|
DocListForm: TDocListForm;
|
|
implementation
|
|
{$R *.dfm}
|
|
procedure TDocListForm.CancelBtClick(Sender: TObject);
|
begin
|
ModalResult := mrCancel;
|
end;
|
|
procedure TDocListForm.DocLVColumnClick(Sender: TObject; Column: TListColumn);
|
begin
|
DocLV.Tag := column.Index;
|
DocLV.CustomSort(nil, 1);
|
end;
|
|
procedure TDocListForm.DocLVCompare(Sender: TObject; Item1, Item2: TListItem;
|
Data: Integer; var Compare: Integer);
|
begin
|
If DocLV.Tag = 0 Then
|
begin
|
Compare := CompareText(Item1.Caption,Item2.Caption);
|
end
|
else
|
begin
|
Compare := CompareText(Item1.SubItems[DocLV.Tag-1],Item2.SubItems[DocLV.Tag-1]);
|
end;
|
end;
|
|
procedure TDocListForm.DocLVDblClick(Sender: TObject);
|
begin
|
if DocLV.Selected <> nil then
|
OKBtclick(nil);
|
end;
|
|
procedure TDocListForm.Edit1Change(Sender: TObject);
|
Var
|
i,v,v1 : Integer;
|
begin
|
DocLV.Clear;
|
for I := 0 to FormIDList.Count - 1 do
|
begin
|
if (Edit1.Text ='') or (Pos(Edit1.Text,FormIDList.Strings[i])>0) then
|
begin
|
With DocLV.Items.Add do
|
begin
|
v:=Pos('#@#',FormIDList.Strings[i]);
|
v1:=length(FormIDList.Strings[i]);
|
Caption := Copy(FormIDList.Strings[i],1,v-1);
|
SubItems.Add(Copy(FormIDList.Strings[i],v+3,v1-v-2));
|
end;
|
end;
|
end;
|
DocLV.Tag := 0;
|
DocLV.CustomSort(nil, 1);
|
end;
|
|
procedure TDocListForm.FormCreate(Sender: TObject);
|
begin
|
PostMessage(Handle,WM_ACTIVATE,WA_CLICKACTIVE,0);
|
FormIDList := TStringlist.Create;
|
end;
|
|
procedure TDocListForm.FormDestroy(Sender: TObject);
|
begin
|
FormIDList.Free;
|
end;
|
|
procedure TDocListForm.FormShow(Sender: TObject);
|
begin
|
DocLV.Tag := 0;
|
//DocLV.CustomSort(nil, 1);
|
end;
|
|
procedure TDocListForm.OkBtClick(Sender: TObject);
|
begin
|
if DocLV.Selected = nil then
|
begin
|
Showmessage(_Msg('©|¥¼¿ï¾ÜÂkÀɤå¥ó'));
|
Exit;
|
end;
|
ModalResult := mrOK;
|
end;
|
|
end.
|