⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uexpmgr.pas

📁 一个基于不需引擎的文件管理系统,使用了许多界面比较好的控件
💻 PAS
📖 第 1 页 / 共 2 页
字号:
begin
  FListWindow := Value;
end;

procedure TExpMgr.SetOnItemAdding(const Value: TNotifyEvent);
begin
  FOnItemAdding := Value;
end;

procedure TExpMgr.SetThefrmType(const Value: frmType);
begin
  FThefrmType := Value;
end;

procedure TExpMgr.ExecWhenDBClick(AData:Pointer);
begin
//
end;

procedure TExpMgr.SetParams(const Value: variant);
begin
  FParams := Value;
end;

procedure TExpMgr.SetOnItemEditing(const Value: TItemEditingEvent);
begin
  FOnItemEditing := Value;
end;

procedure TExpMgr.EditListItem(Sender: TObject;Item:TListItem);
begin
  Item.SubItems.Clear;
end;

{ TExpCustomMgr }

procedure TExpCustomMgr.AddListItem(Sender:TObject);
var
  CustomData:PCustomData;
  Item:TListItem;
begin
  inherited;
  new(CustomData);
  CustomData^.ID:=cds.fieldbyname('ID').AsInteger;
  CustomData^.Caption:=cds.fieldbyname('Name').AsString;
  CustomData^.Path:=cds.fieldbyname('Path').AsString;
  CustomData^.Desc:=cds.fieldbyname('Description').AsString;

  Item:=ListWindow.Items.Add;
  Item.StateIndex:=CustomData^.ID;
  Item.Data:=CustomData;
  Item.Caption:=CustomData^.Caption;
  Item.SubItems.Add(CustomData^.Path);
  Item.SubItems.Add(CustomData^.Desc);
  if ThefrmType=fmWebLink then
    Item.ImageIndex:=1
  else if ThefrmType=fmMp3 then
    Item.ImageIndex:=2
  else if ThefrmType=fmImage then
    Item.ImageIndex:=3;
end;

procedure TExpCustomMgr.EditListItem(Sender: TObject; Item: TListItem);
var
  CustomData:PCustomData;
begin
  inherited;
  CustomData:=Item.Data;
  CustomData^.ID:=cds.fieldbyname('ID').AsInteger;
  CustomData^.Caption:=cds.fieldbyname('Name').AsString;
  CustomData^.Path:=cds.fieldbyname('Path').AsString;
  CustomData^.Desc:=cds.fieldbyname('Description').AsString;

  with Item do
  begin
    StateIndex:=CustomData^.ID;
    Data:=CustomData;
    Caption:=CustomData^.Caption;
    SubItems.Add(CustomData^.Path);
    SubItems.Add(CustomData^.Desc);
    if ThefrmType=fmWebLink then
      ImageIndex:=1
    else if ThefrmType=fmMp3 then
      ImageIndex:=2
    else if ThefrmType=fmImage then
      Item.ImageIndex:=3;
  end;
end;

procedure TExpCustomMgr.ExecWhenDBClick(AData: Pointer);
begin
  inherited;
  shellexecute(0,'open',Pchar(PCustomData(AData)^.Path),nil,nil,SW_SHOWNORMAL);
end;

function TExpCustomMgr.GetItemID(Node:TListItem): integer;
begin
  inherited GetItemID(Node);
  result:=PCustomData(Node.Data)^.ID;
end;

procedure TExpCustomMgr.RefreshList;
var
  i:integer;
begin
  inherited;
  GetHeadList(CustomHead);
  for i:=0 to PlugList.Count-1 do
  begin
    if integer(ISecPlug(PlugList[i]).PlugType)=integer(ThefrmType)+1 then
    begin
      ISecPlug(PlugList[i]).GetContext;
    end;
  end;
end;

{ TExpPDAMgr }

procedure TExpPDAMgr.AddListItem(Sender: TObject);
var
  PDAData:PPDaData;
  Item:TListItem;
begin
  inherited;
  new(PDAData);
  PDAData^.ID:=cds.fieldbyname('ID').AsInteger;
  PDAData^.Caption:=cds.fieldbyname('Name').AsString;
  PDAData^.Target:=cds.fieldbyname('Target').AsString;
  PDAData^.Desc:=cds.fieldbyname('Description').AsString;
  PDAData^.ImageIndex:=cds.fieldbyname('ImageIndex').AsInteger;

  Item:=ListWindow.Items.Add;
  Item.StateIndex:=PDAData^.ID;
  Item.Data:=PDAData;
  Item.Caption:=PDAData^.Caption;
  Item.SubItems.Add(PDAData^.Target);
  Item.SubItems.Add(PDAData^.Desc);
  Item.ImageIndex:=PDAData^.ImageIndex;
end;

procedure TExpPDAMgr.EditListItem(Sender: TObject;Item:TListItem);
var
  PDAData:PPDaData;
begin
  inherited;
  PDAData:=Item.Data;
  PDAData^.ID:=cds.fieldbyname('ID').AsInteger;
  PDAData^.Caption:=cds.fieldbyname('Name').AsString;
  PDAData^.Target:=cds.fieldbyname('Target').AsString;
  PDAData^.Desc:=cds.fieldbyname('Description').AsString;
  PDAData^.ImageIndex:=cds.fieldbyname('ImageIndex').AsInteger;

  with Item do
  begin
    StateIndex:=PDAData^.ID;
    Data:=PDAData;
    Caption:=PDAData^.Caption;
    SubItems.Add(PDAData^.Target);
    SubItems.Add(PDAData^.Desc);
    ImageIndex:=PDAData^.ImageIndex;
  end;
end;

procedure TExpPDAMgr.ExecWhenDBClick(AData: Pointer);
begin
  inherited;
  shellexecute(0,'open',Pchar(PPDAData(AData)^.Target),nil,nil,SW_SHOWNORMAL);
end;

function TExpPDAMgr.GetItemID(Node:TListItem): integer;
begin
  inherited GetItemID(Node);
  result:=PPDAData(Node.Data)^.ID;
end;

procedure TExpPDAMgr.RefreshList;
begin
  inherited;
  GetHeadList(PDAHead);
end;

{ TExpLinkManMgr }

procedure TExpLinkManMgr.AddListItem(Sender:TObject);
var
  LinkManData:PLinkManData;
  Item:TListItem;
begin
  inherited;
  new(LinkManData);
  LinkManData^.ID:=cds.fieldbyname('ID').AsInteger;
  LinkManData^.Name:=cds.fieldbyname('Name').AsString;
  LinkManData^.Phone:=cds.fieldbyname('Phone').AsString;
  LinkManData^.Fax:=cds.fieldbyname('Fax').AsString;
  LinkManData^.EMail:=cds.fieldbyname('EMail').AsString;
  LinkManData^.Address:=cds.fieldbyname('Address').AsString;

  Item:=ListWindow.Items.Add;
  Item.StateIndex:=LinkManData^.ID;
  Item.Data:=LinkManData;
  Item.Caption:=LinkManData^.Name;
  Item.SubItems.Add(LinkManData^.Phone);
  Item.SubItems.Add(LinkManData^.Fax);
  Item.SubItems.Add(LinkManData^.EMail);
  Item.SubItems.Add(LinkManData^.Address);
  Item.ImageIndex:=4;
end;

procedure TExpLinkManMgr.EditListItem(Sender: TObject; Item: TListItem);
var
  LinkManData:PLinkManData;
begin
  inherited;
  LinkManData:=Item.Data;
  LinkManData^.ID:=cds.fieldbyname('ID').AsInteger;
  LinkManData^.Name:=cds.fieldbyname('Name').AsString;
  LinkManData^.Phone:=cds.fieldbyname('Phone').AsString;
  LinkManData^.Fax:=cds.fieldbyname('Fax').AsString;
  LinkManData^.EMail:=cds.fieldbyname('EMail').AsString;
  LinkManData^.Address:=cds.fieldbyname('Address').AsString;

  with Item do
  begin
    StateIndex:=LinkManData^.ID;
    Data:=LinkManData;
    Caption:=LinkManData^.Name;
    SubItems.Add(LinkManData^.Phone);
    SubItems.Add(LinkManData^.Fax);
    SubItems.Add(LinkManData^.EMail);
    SubItems.Add(LinkManData^.Address);
    ImageIndex:=4;
  end;
end;

procedure TExpLinkManMgr.ExecWhenDBClick(AData: Pointer);
begin
  inherited;
  shellexecute(0,'open',Pchar('Mailto:'+PLinkManData(AData)^.EMail),nil,nil,SW_SHOWNORMAL);
end;

function TExpLinkManMgr.GetItemID(Node:TListItem): integer;
begin
  inherited GetItemID(Node);
  result:=PLinkManData(Node.Data)^.ID;
end;

procedure TExpLinkManMgr.RefreshList;
begin
  inherited;
  GetHeadList(LinkManHead);
end;

{ TExpFolderMgr }

procedure TExpFolderMgr.AddListItem(Sender: TObject);
var
  FolderData:PFolderData;
  Item:TListItem;
begin
  inherited;
  new(FolderData);
  FolderData^.ID:=cds.fieldbyname('ID').AsInteger;
  FolderData^.Text:=cds.fieldbyname('Text').AsString;
  FolderData^.CreateData:=cds.fieldbyname('CreateDate').AsDateTime;
  FolderData^.Locked:=Boolean(cds.fieldbyname('Locked').AsInteger);
  FolderData^.Pro:=cds.FieldByName('Pro').AsInteger;
  FolderData^.IsFile:=cds.FieldByName('IsFile').AsInteger;

  Item:=ListWindow.Items.Add;
  Item.StateIndex:=FolderData^.ID;
  Item.Data:=FolderData;
  Item.Caption:=FolderData^.Text;
  Item.SubItems.Add(Datetimetostr(FolderData^.CreateData));
  Item.ImageIndex:=5+(FolderData^.IsFile*2)+integer(FolderData^.Locked);
end;

procedure TExpFolderMgr.EditListItem(Sender: TObject; Item: TListItem);
var
  FolderData:PFolderData;
begin
  inherited;
  FolderData:=Item.Data;
  FolderData^.ID:=cds.fieldbyname('ID').AsInteger;
  FolderData^.Text:=cds.fieldbyname('Text').AsString;
  FolderData^.CreateData:=cds.fieldbyname('CreateDate').AsDateTime;
  FolderData^.Locked:=Boolean(cds.fieldbyname('Locked').AsInteger);
  FolderData^.Pro:=cds.FieldByName('Pro').AsInteger;
  FolderData^.IsFile:=cds.FieldByName('IsFile').AsInteger;

  with Item do
  begin
    StateIndex:=FolderData^.ID;
    Data:=FolderData;
    Caption:=FolderData^.Text;
    SubItems.Add(Datetimetostr(FolderData^.CreateData));
    ImageIndex:=5+(FolderData^.IsFile*2)+integer(FolderData^.Locked);
  end;
end;

procedure TExpFolderMgr.ExecWhenDBClick(AData: Pointer);
begin
  inherited;
  ITheOprList.ViewNode(PFolderData(AData)^.ID); 
end;

function TExpFolderMgr.GetItemID(Node:TListItem): integer;
begin
  inherited GetItemID(Node);
  result:=PFolderData(Node.Data)^.ID;
end;

procedure TExpFolderMgr.RefreshList;
begin
  inherited;
  GetHeadList(FolderHead);
end;


end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -