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

📄 ufrmdblist.pas

📁 数据库通用工具
💻 PAS
字号:
unit UfrmDBList;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, StdCtrls, Buttons, ExtCtrls, ImgList,  IniFiles, Menus;

type
  TfrmDBList = class(TForm)
    Panel1: TPanel;
    bbtSave: TBitBtn;
    bbtClose: TBitBtn;
    lv: TListView;
    ImageList1: TImageList;
    bbtAdd: TBitBtn;
    bbtSelect: TBitBtn;
    Panel2: TPanel;
    Label1: TLabel;
    Edit1: TEdit;
    Label2: TLabel;
    Edit2: TEdit;
    Label3: TLabel;
    Edit3: TEdit;
    Label4: TLabel;
    Edit4: TEdit;
    PopupMenu1: TPopupMenu;
    D1: TMenuItem;
    procedure bbtSelectClick(Sender: TObject);
    procedure Edit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure bbtAddClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure bbtCloseClick(Sender: TObject);
    procedure bbtSaveClick(Sender: TObject);
    procedure D1Click(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
  private
    { Private declarations }
    path:string;
    ini:TIniFile;
  public
    { Public declarations }
  end;

var
  frmDBList: TfrmDBList;

implementation

{$R *.dfm}

procedure TfrmDBList.bbtSelectClick(Sender: TObject);
begin
  if lv.Selected = nil then exit;
  self.ModalResult := 1;
end;

procedure TfrmDBList.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key = vk_return then
    sendMessage(handle,wm_nextdlgctl,0,0);
end;

procedure TfrmDBList.bbtAddClick(Sender: TObject);
var
  item : TListItem;
begin
  item := lv.Items.Add;
  item.Caption := Trim( edit1.Text );
  item.SubItems.Add( Trim( edit2.Text ) );
  item.SubItems.Add( Trim( edit3.Text ) );
  item.SubItems.Add( Trim( edit4.Text ) );
end;

procedure TfrmDBList.FormShow(Sender: TObject);
var
  item : TListItem;
  i,k : Integer;
begin

  path := ExtractFilePath(application.ExeName);
  ini := TIniFile.Create(path+'config.may');

  k := ini.ReadInteger('DBList',  'Count', 0);

  for i := 0 to k-1 do
  begin
    item := lv.Items.Add;
    item.Caption := ini.ReadString('DBList',  'Server'+IntToStr(i), '127.0.0.1' );
    item.SubItems.Add( ini.ReadString('DBList',  'DBName'+IntToStr(i), 'pubs') );
    item.SubItems.Add( ini.ReadString('DBList',  'user'+IntToStr(i), 'sa') );
    item.SubItems.Add( ini.ReadString('DBList',  'pass'+IntToStr(i), 'sa') );
  end;
  
  if lv.Items.Count>0 then
    lv.Items.Item[0].Selected := true;
  
end;

procedure TfrmDBList.bbtCloseClick(Sender: TObject);
begin
  close;
end;

procedure TfrmDBList.bbtSaveClick(Sender: TObject);
var
  item : TListItem;
  i,k : Integer;
begin

  ini.WriteInteger('DBList',  'Count', lv.Items.Count);
  for i := 0 to lv.Items.Count-1 do
  begin
    item := lv.Items.Item[i];
    ini.WriteString('DBList',  'Server'+IntToStr(i), item.Caption );
    ini.WriteString('DBList',  'DBName'+IntToStr(i), item.SubItems.Strings[0]) ;
    ini.WriteString('DBList',  'user'+IntToStr(i), item.SubItems.Strings[1]) ;
    ini.WriteString('DBList',  'pass'+IntToStr(i), item.SubItems.Strings[2]) ;
  end;

  ShowMessage('保存成功!');
  
end;

procedure TfrmDBList.D1Click(Sender: TObject);
begin
  //删除 &D
  if lv.Selected <> nil then
  begin
    lv.Selected.Delete;
  end;

end;

procedure TfrmDBList.FormDestroy(Sender: TObject);
begin
  ini.Free;
end;

end.

⌨️ 快捷键说明

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