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

📄 main_card.pas

📁 一个DELPHI制作的名片系统小巧简单~是参考的好
💻 PAS
字号:
unit main_card;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ComCtrls, fcDemoRichEdit, fcShapeBtn, ExtCtrls,
  fcClearPanel, fcButtonGroup, fcOutlookBar, fcButton, fcImgBtn, fcImager,
  fcImage, fcimageform,shellapi, fcLabel, ADODB, DB, Mask, DBCtrls,
  cxControls, cxContainer, cxEdit, cxTextEdit, cxMaskEdit, cxDropDownEdit,
  cxLookupEdit, cxDBLookupEdit, cxDBLookupComboBox, cxStyles, cxCustomData,
  cxGraphics, cxFilter, cxData, cxDataStorage, cxDBData, cxGridLevel,
  cxClasses, cxGridCustomView, cxGridCustomTableView, cxGridTableView,
  cxGridDBTableView, cxGrid, DBTables,cxExportGrid4Link, cxCheckBox,
  cxDBEdit;

type
  Tmain_form = class(TForm)
    fcImageForm1: TfcImageForm;
    fcImager1: TfcImager;
    DragControl: TImage;
    About1: TfcImageBtn;
    brower1: TfcImageBtn;
    edit1: TfcImageBtn;
    pc0: TPageControl;
    tab1: TTabSheet;
    tab2: TTabSheet;
    tab3: TTabSheet;
    tab4: TTabSheet;
    ScrollBox1: TScrollBox;
    ScrollBox2: TScrollBox;
    ScrollBox3: TScrollBox;
    ScrollBox4: TScrollBox;
    fcLabel1: TfcLabel;
    fcLabel2: TfcLabel;
    ADOCONN: TADOConnection;
    ado_edit: TADOTable;
    ADOStored: TADOStoredProc;
    Memo_MEMO: TDBMemo;
    lookclient_type: TcxDBLookupComboBox;
    Label9: TLabel;
    Label8: TLabel;
    Label7: TLabel;
    Label6: TLabel;
    Label5: TLabel;
    Label4: TLabel;
    Label3: TLabel;
    Label2: TLabel;
    Label14: TLabel;
    Label13: TLabel;
    Label12: TLabel;
    Label11: TLabel;
    Label10: TLabel;
    Edit_USER: TDBEdit;
    Edit_TEL: TDBEdit;
    Edit_TAX: TDBEdit;
    Edit_POSTCODE: TDBEdit;
    Edit_NUMBER: TDBEdit;
    Edit_NAME: TDBEdit;
    Edit_FAX: TDBEdit;
    Edit_EMAIL: TDBEdit;
    Edit_CODE: TDBEdit;
    Edit_BANK: TDBEdit;
    Edit_ADDRESS: TDBEdit;
    fc_add: TfcImageBtn;
    fc_cancel: TfcImageBtn;
    ado_editds: TDataSource;
    fcImageBtn1: TfcImageBtn;
    ado_typeds: TDataSource;
    ado_type: TADOTable;
    disp_grid: TcxGrid;
    disp_db: TcxGridDBTableView;
    disp_dblevel: TcxGridLevel;
    ado_browseds: TDataSource;
    ado_browse: TADOQuery;
    disp_dbID: TcxGridDBColumn;
    disp_dbname: TcxGridDBColumn;
    disp_dbuser: TcxGridDBColumn;
    disp_dbaddress: TcxGridDBColumn;
    disp_dbbank: TcxGridDBColumn;
    disp_dbtax: TcxGridDBColumn;
    disp_dbcard: TcxGridDBColumn;
    disp_dbnumber: TcxGridDBColumn;
    disp_dbpostcode: TcxGridDBColumn;
    disp_dbtel: TcxGridDBColumn;
    disp_dbtype: TcxGridDBColumn;
    disp_dbfax: TcxGridDBColumn;
    disp_dbemail: TcxGridDBColumn;
    disp_dbmemo: TcxGridDBColumn;
    fcexport: TfcImageBtn;
    fcprint: TfcImageBtn;
    SaveDialog: TSaveDialog;
    fcdel: TfcImageBtn;
    fcLabel3: TfcLabel;
    fcImageBtn2: TfcImageBtn;
    fcImageBtn3: TfcImageBtn;
    cc: TcxCheckBox;
    fcsave: TfcImageBtn;
    disp_dbjob: TcxGridDBColumn;
    Label1: TLabel;
    ado_job: TADOTable;
    ado_jobds: TDataSource;
    cxDBLookupComboBox1: TcxDBLookupComboBox;
    procedure CloseBtnClick(Sender: TObject);
    procedure fcImager1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure edit1Click(Sender: TObject);
    procedure brower1Click(Sender: TObject);
    procedure About1Click(Sender: TObject);
    procedure fc_addClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure fc_cancelClick(Sender: TObject);
    procedure fcImageBtn1Click(Sender: TObject);
    procedure fcexportClick(Sender: TObject);
    procedure fcdelClick(Sender: TObject);
    procedure fcprintClick(Sender: TObject);
    procedure disp_dbKeyPress(Sender: TObject; var Key: Char);
    procedure fcImageBtn3Click(Sender: TObject);
    procedure Edit_NAMEExit(Sender: TObject);
    procedure fcsaveClick(Sender: TObject);
    procedure disp_dbMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
  private
     procedure doenterastab(var msg:tmsg;var handled:boolean);
  public
    { Public declarations }
  end;

var
  main_form: Tmain_form;

implementation
uses
 card_type,card_print;
{$R *.dfm}

procedure Tmain_form.CloseBtnClick(Sender: TObject);
begin
close;
end;

procedure Tmain_form.fcImager1Click(Sender: TObject);
begin
shellexecute(application.MainForm.Handle,'open',pchar('http://www.ezhuo.cn'),nil,nil,sw_normal);

end;

procedure Tmain_form.FormCreate(Sender: TObject);
begin

  with adoconn do
    begin
      Close;   //关闭数据库
      
      ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0' +
        ';Data Source=' + ExtractFilePath(Application.ExeName)+'card_database\card.mdb'+
        ';Persist Security Info=False;Jet OLEDB:Database Password='+'ezhuo.cn'; //password是设置密码项
        
      Open;   //打开数据库
    end;

fcimager1.ShowHint :=true;
disp_grid.ShowHint :=true;

pc0.ActivePage :=tab1;
ado_type.Open;
ado_job.Open;
application.OnMessage:=doenterastab;//tab变成ENTER键

end;

procedure Tmain_form.edit1Click(Sender: TObject);
begin
pc0.ActivePage :=tab2;

if ado_edit.State <>dsinsert then
 begin
  ado_edit.Open;
  ado_edit.Append ;
 end;

edit_name.SetFocus ;
end;

procedure Tmain_form.brower1Click(Sender: TObject);
begin
pc0.ActivePage :=tab3;
//ado_browse.Refresh;
ado_browse.close;
ado_browse.Open;
end;

procedure Tmain_form.About1Click(Sender: TObject);
begin
pc0.ActivePage :=tab4;
end;

procedure Tmain_form.fc_addClick(Sender: TObject);
begin
if  (edit_name.Text ='')or(edit_user.Text='') then
  begin
  messagedlg('提示:带***必须输入'+#13+#13+
             '请输入完整信息',mtinformation,[mbyes],0);
   fc_add.Down :=false;
   end          
else
  begin
  ado_edit.Append ;
  fc_add.Down :=false;
  edit_name.SetFocus ;
  end;
  
end;

procedure Tmain_form.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if (ado_edit.State =dsedit)or(ado_edit.State =dsinsert)then
 if (edit_name.Text <>'')or(edit_user.Text <>'') then
  if messagedlg('提示:在编辑项目里编辑了数据,请问是否保存数据?',mtinformation,[mbyes,mbno],0)=mryes then
     ado_edit.Post ;

if (ado_browse.State =dsedit)or(ado_browse.State =dsinsert)then
  if messagedlg('提示:在浏览项目里编辑了数据,请问是否保存数据?',mtinformation,[mbyes,mbno],0)=mryes then
     ado_browse.Post ;
     
ado_edit.Close;
ado_browse.Close;
ado_type.Close;
ado_job.Close;
adoconn.Close;
end;

procedure Tmain_form.fc_cancelClick(Sender: TObject);
begin
if ado_edit.State =dsinsert then
ado_edit.Cancel ;
end;

procedure Tmain_form.doenterastab(var msg: tmsg; var handled: boolean);
begin
if msg.message =wm_keydown then
 begin
 if msg.wParam =vk_return then
  keybd_event(vk_tab,0,0,0);
 end; 
end;

procedure Tmain_form.fcImageBtn1Click(Sender: TObject);
var
 form:tcard_type_form;
begin

try
 form:=tcard_type_form.Create(nil);
 form.ShowModal ;
 form.Free;

 ado_type.Close;
 ado_type.Open;

 ado_job.Close;
 ado_job.Open;

except
 messagedlg('错误,资源错误!',mterror,[mbyes],0);
 form.Free;
end;

end;

procedure Tmain_form.fcexportClick(Sender: TObject);
var
 count:integer;
begin

savedialog.FileName :='名片资料';

if savedialog.FilterIndex=1 then
   savedialog.DefaultExt :='xls'
else
   if savedialog.FilterIndex =2 then
    savedialog.DefaultExt :='htm'
   else
    if savedialog.FilterIndex=3 then
       savedialog.DefaultExt :='xml'
    else
      if savedialog.FilterIndex=4 then
        savedialog.DefaultExt :='txt';



if savedialog.Execute then
 begin
   
 if savedialog.FilterIndex=1 then
   ExportGrid4ToExcel(savedialog.FileName,disp_grid)
 else
   if savedialog.FilterIndex =2 then
     ExportGrid4Tohtml(savedialog.FileName,disp_grid)
   else
     if savedialog.FilterIndex=3 then
        ExportGrid4Toxml(savedialog.FileName,disp_grid)
     else
       if savedialog.FilterIndex=4 then
         ExportGrid4Totext(savedialog.FileName,disp_grid,true,true,'|',' ',' ');

 end;

end;

procedure Tmain_form.fcdelClick(Sender: TObject);
begin
if ado_type.Eof =false then
if messagedlg('请确定删除?',mtinformation,[mbyes,mbno],0)=mryes then
  ado_browse.Delete ;
end;

procedure Tmain_form.fcprintClick(Sender: TObject);
begin
card_qr.Preview ;
end;

procedure Tmain_form.disp_dbKeyPress(Sender: TObject; var Key: Char);
begin
if key=#46 then
 fcdel.Click ;
end;

procedure Tmain_form.fcImageBtn3Click(Sender: TObject);
begin
//main_form.WindowState :=wsminimized;
end;

procedure Tmain_form.Edit_NAMEExit(Sender: TObject);
begin
if cc.Checked =true then
 ado_edit.FieldByName('user').AsString:=edit_name.Text ;
end;

procedure Tmain_form.fcsaveClick(Sender: TObject);
begin
if (ado_browse.State =dsedit)or(ado_browse.State =dsinsert) then
  ado_browse.Post ;
end;

procedure Tmain_form.disp_dbMouseMove(Sender: TObject; Shift: TShiftState;
  X, Y: Integer);
var
 sum,rec:integer;
begin

sum:=ado_browse.RecordCount ;
rec:=ado_browse.RecNo ;
disp_grid.Hint :='共有记录数:'+inttostr(sum)+'  '+#13+
                 '当前记录数:'+inttostr(rec)+'  ';
end;

end.

⌨️ 快捷键说明

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