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

📄 main.pas

📁 针对信息进行帅选Delphi筛选系统
💻 PAS
字号:
unit main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, DB, ADODB, StdCtrls,ComObj,ExcelOut, OleServer, Excel2000,
  RzButton, ExtCtrls, RzPanel, WinSkinData, RzStatus, RzBHints, RzTray, SHELLAPI,
  RzForms, RzPrgres, RzBorder, Menus;

type
  TForm1 = class(TForm)
    OpenDialog: TOpenDialog;
    ADOConnection1: TADOConnection;
    RzPanel1: TRzPanel;
    Button1: TRzBitBtn;
    Button2: TRzBitBtn;
    Button3: TRzBitBtn;
    RzGroupBox1: TRzGroupBox;
    ExcelDataList: TListView;
    RzGroupBox2: TRzGroupBox;
    ListDelete: TListView;
    RzBitBtn1: TRzBitBtn;
    SkinData1: TSkinData;
    Splitter1: TSplitter;
    ClockStatus: TRzClockStatus;
    BalloonHints: TRzBalloonHints;
    TrayIcon: TRzTrayIcon;
    VersionInfoStatus: TRzVersionInfoStatus;
    MainMenu1: TMainMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    N4: TMenuItem;
    N5: TMenuItem;
    N6: TMenuItem;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure RzBitBtn1Click(Sender: TObject);
    procedure N2Click(Sender: TObject);
    procedure N3Click(Sender: TObject);
    procedure N4Click(Sender: TObject);
    procedure N6Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

uses  Showhit, About;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  ADOcon:TADOConnection;
  Query:TADOQuery;
  filename,strsql:string;
  item:TListItem;
  ShowHit:TshowhitForm;
begin
  OpenDialog.Filter:='Excel文档|*.xls';
  if not  OpenDialog.Execute then Exit;
  filename:=OpenDialog.FileName;
  ADOcon:=TADOConnection.Create(self);
  ADOcon.ConnectionString:='Provider=MSDASQL.1;Extended Properties="'
                    +'DBQ='+filename+';' 
                    +'Driver={Microsoft Excel Driver (*.xls)};DriverId=790;MaxBufferSize=2048;PageTimeout=5;"';
  ADOcon.LoginPrompt:=False;
  ADOcon.Connected:=True;
  Query:=TADOQuery.Create(self);
  Query.Connection:=ADOcon;

   strsql:='select * from [sheet1$]';
   Query.SQL.Clear;
   Query.SQL.Add(strsql);
    try
     Query.Open;
     ExcelDataList.Items.Clear;
   showhit:=TShowHitForm.Create(self);
   ShowHit.SetStatus('正在导入中.....请稍候!');
   ShowHit.Show;
   showhit.Repaint;
      while not Query.Eof do
       begin
        item:=ExcelDataList.Items.Add;
        item.Caption:=Query.Fields[0].AsString;
        item.SubItems.Add(Query.Fields[1].AsString);
        Query.Next;
       end;
    except
     Query.Free;
   end;
    showhit.Hide;
    showhit.Free;
    Button2.Enabled:=True;
    Button1.Enabled:=True;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
 i,j:integer;
  ShowHit:TshowhitForm;
begin
   showhit:=TShowHitForm.Create(self);
   ShowHit.SetStatus('正在筛选中.....请稍候!');
   ShowHit.Show;
   showhit.Repaint;
 for i:=ListDelete.Items.Count-1 downto 0 do
  begin
    if Trim(ListDelete.Items.Item[i].Caption)='' then
    Continue;
    for j:=0 to ExcelDataList.Items.Count-1  do
      begin
       if Trim(ExcelDataList.Items.Item[j].Caption)='' then
         Continue;
        if Trim(ExcelDataList.Items.Item[j].Caption)=Trim(ListDelete.Items.Item[i].Caption) then
         begin
             ListDelete.Items.Item[i].Delete;
             Break;
         end
         else
          begin
            Continue;
          end;
       end;   
  end;
    showhit.Hide;
    showhit.Free;
    Button3.Enabled:=True;
    MessageBox(Handle,PChar('总共  '+IntToStr(ListDelete.Items.Count)+'  条记录导被筛选出来。'),PChar('筛选完成'),MB_OK+MB_ICONINFORMATION);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
Button2.Enabled:=false;
Button3.Enabled:=false;
end;

procedure TForm1.Button3Click(Sender: TObject);
Begin
OutputExcel(ListDelete);
end;

procedure TForm1.RzBitBtn1Click(Sender: TObject);
var
  ADOcon:TADOConnection;
  Query:TADOQuery;
  filename,strsql:string;
  items:TListItem;
  ShowHit:TshowhitForm;
begin
  OpenDialog.Filter:='Excel文档|*.xls';
  if not  OpenDialog.Execute then Exit;
  filename:=OpenDialog.FileName;
  ADOcon:=TADOConnection.Create(self);
  ADOcon.ConnectionString:='Provider=MSDASQL.1;Extended Properties="'
                    +'DBQ='+filename+';'
                    +'Driver={Microsoft Excel Driver (*.xls)};DriverId=790;MaxBufferSize=2048;PageTimeout=5;"';
  ADOcon.LoginPrompt:=False;                  
  ADOcon.Connected:=True;

  Query:=TADOQuery.Create(self);
  Query.Connection:=ADOcon;

   strsql:='select * from [sheet1$]';
   Query.SQL.Clear;
   Query.SQL.Add(strsql);
   try
     Query.Open;
     ListDelete.Items.Clear;
   showhit:=TShowHitForm.Create(self);
   ShowHit.SetStatus('正在导入中.....请稍候!');
   ShowHit.Show;
   showhit.Repaint;
      while not Query.Eof do
       begin
        items:=ListDelete.Items.Add;
        items.Caption:=QUery.Fields[0].AsString;
        items.SubItems.Add(Query.Fields[1].AsString);
        Query.Next;
       end;
    except
     Query.Free;
   end;
    showhit.Hide;
    showhit.Free;
    Button2.Enabled:=True;
    RzBitBtn1.Enabled:=True;
end;

procedure TForm1.N2Click(Sender: TObject);
begin
  shellexecute(handle,'open',pchar('notepad'),nil,nil,SW_SHOW); //calc
end;

procedure TForm1.N3Click(Sender: TObject);
begin
  shellexecute(handle,'open',pchar('calc'),nil,nil,SW_SHOW); //calc
end;

procedure TForm1.N4Click(Sender: TObject);
begin
  shellexecute(handle,'open',pchar('mspaint'),nil,nil,SW_SHOW); //calc
end;

procedure TForm1.N6Click(Sender: TObject);
begin
   if not Assigned(form2) then
     Application.CreateForm(Tform2,Form2);
   Form2.ShowModal;   
end;

end.

⌨️ 快捷键说明

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