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

📄 main.~pas

📁 管理系统.rar - RAR 压缩文件, 解包大小为 107,263,136 字节
💻 ~PAS
📖 第 1 页 / 共 2 页
字号:
{
================================================================================
* 软件名称:货运作业物流系统
* 单元名称:主窗体文件
* 单元版本:V1.0
* 单元作者:cm991 (cm@ytht.net)
* 备    注:开发完成
* 开发平台:Access2000+windows2000 + Delphi7
* 兼容测试:PWin9X/2000/XP + Delphi 5/6/7
* 本 地 化:该单元中的字符串支持本地化处理方式
* 更新记录:2003.03.15 V1.0
*               创建单元
================================================================================
|</PRE>}

unit main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, ExtCtrls, ComCtrls, StdCtrls;
type
  UserInfo = record // 定义用户信息
    UserID: string; // 用户编号
    UserName: string; // 用户名称
  end;

type
  TMainForm = class(TForm)
    MainMenu1: TMainMenu;
    ZY: TMenuItem;
    ZY110: TMenuItem;
    ZY120: TMenuItem;
    ZY130: TMenuItem;
    N6: TMenuItem;
    ZY210: TMenuItem;
    ZY220: TMenuItem;
    N9: TMenuItem;
    ZY310: TMenuItem;
    CX: TMenuItem;
    CX110: TMenuItem;
    CX120: TMenuItem;
    N14: TMenuItem;
    CX210: TMenuItem;
    CX220: TMenuItem;
    N17: TMenuItem;
    CX310: TMenuItem;
    CX320: TMenuItem;
    JS: TMenuItem;
    JS110: TMenuItem;
    N22: TMenuItem;
    JS210: TMenuItem;
    JS220: TMenuItem;
    JS230: TMenuItem;
    JS240: TMenuItem;
    N27: TMenuItem;
    JS310: TMenuItem;
    JS320: TMenuItem;
    N31: TMenuItem;
    JS420: TMenuItem;
    N33: TMenuItem;
    JS510: TMenuItem;
    WH: TMenuItem;
    WH110: TMenuItem;
    WH120: TMenuItem;
    N38: TMenuItem;
    WH210: TMenuItem;
    N40: TMenuItem;
    WH310: TMenuItem;
    WH320: TMenuItem;
    WH330: TMenuItem;
    WH340: TMenuItem;
    WH350: TMenuItem;
    WH360: TMenuItem;
    N47: TMenuItem;
    WH410: TMenuItem;
    WH420: TMenuItem;
    FW: TMenuItem;
    FW110: TMenuItem;
    FW120: TMenuItem;
    N53: TMenuItem;
    FW210: TMenuItem;
    FW220: TMenuItem;
    Help: TMenuItem;
    Help110: TMenuItem;
    Panel1: TPanel;
    StatusBar1: TStatusBar;
    JS410: TMenuItem;
    procedure Panel1DockDrop(Sender: TObject; Source: TDragDockObject; X,
      Y: Integer);
    procedure WH110Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure WH120Click(Sender: TObject);
    procedure WH210Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure WH310Click(Sender: TObject);
    procedure WH320Click(Sender: TObject);
    procedure WH330Click(Sender: TObject);
    procedure WH340Click(Sender: TObject);
    procedure WH350Click(Sender: TObject);
    procedure Help110Click(Sender: TObject);
    procedure WH360Click(Sender: TObject);
    procedure WH410Click(Sender: TObject);
    procedure WH420Click(Sender: TObject);
    procedure ZY110Click(Sender: TObject);
    procedure JS510Click(Sender: TObject);
    procedure ZY120Click(Sender: TObject);
    procedure ZY130Click(Sender: TObject);
    procedure ZY210Click(Sender: TObject);
    procedure ZY220Click(Sender: TObject);
    procedure ZY310Click(Sender: TObject);
    procedure CX110Click(Sender: TObject);
    procedure FW210Click(Sender: TObject);
    procedure FW220Click(Sender: TObject);
    procedure FW110Click(Sender: TObject);
    procedure FW120Click(Sender: TObject);
    procedure CX120Click(Sender: TObject);
    procedure CX210Click(Sender: TObject);
    procedure CX220Click(Sender: TObject);
    procedure CX310Click(Sender: TObject);
    procedure CX320Click(Sender: TObject);
    procedure JS420Click(Sender: TObject);
    procedure JS410Click(Sender: TObject);
    procedure JS210Click(Sender: TObject);
    procedure JS220Click(Sender: TObject);
    procedure JS230Click(Sender: TObject);
    procedure JS240Click(Sender: TObject);
    procedure JS310Click(Sender: TObject);
    procedure JS320Click(Sender: TObject);
    procedure JS110Click(Sender: TObject);
  private

    { Private declarations }
  public
    Auser: Userinfo;
    { Public declarations }
  end;

var
  MainForm: TMainForm;
  Hour, Min, Sec, MSec, year, month, day: Word;
implementation

uses WH110Unit, DMUnit, WH120Unit, WH210Unit, WH310Unit, WH320Unit,
  WH330Unit, WH340Unit, WH350Unit, WH360Unit, WH410Unit, WH420Unit,
  ZY110Unit, JS510Unit, ZY130Unit, ZY210Unit, ZY220Unit, ZY310Unit,
  CX110Unit, FW210Unit, FW110Unit, CX120Unit, CX210Unit, CX220Unit,
  CX310Unit, CX320Unit, JS420Unit, JS210Unit, JS220Unit, JS230Unit,
  JS240Unit, JS310Unit, JS320Unit, JS110Unit;

{$R *.dfm}



procedure TMainForm.Panel1DockDrop(Sender: TObject;
  Source: TDragDockObject; X, Y: Integer);
var
  i: integer;
begin
  i := 0;
{--- 如果要打开一个新的窗体,判断是否打开了一个窗体,如果是则关闭 ---}
  while (i <= Panel1.ControlCount - 1) and (Panel1.ControlCount > 1) do
  begin
    if Panel1.Controls[i] is TForm then
    begin
      {---  释放一个控件后I不递增 ---}
      Panel1.Controls[i].Free;
    end
    else
      i := i + 1;{--- 如果不是,I加1 ---}
  end;
end;

procedure TMainForm.WH110Click(Sender: TObject);
begin
  try //弹出公司资料设置窗体
    MainForm.Caption := '货运作业物流系统 ---  ' + WH110.Caption;
    // 显示窗体的标题变化
    WH110Form := TWH110Form.Create(Application);
    WH110Form.ManualDock(Panel1, nil, AlClient)
  except
    MessageBox(0, '公司资料设置窗体创建错误', '产生严重例外错误', MB_OK +
      MB_ICONSTOP);
  end;
end;

procedure TMainForm.FormShow(Sender: TObject);
begin
  StatusBar1.Panels[0].TEXT := DM.company.FieldByName('名称').AsString;
  StatusBar1.Panels[1].TEXT := '操作员编号:  ' + Auser.UserID;
  StatusBar1.Panels[2].TEXT := '操作员姓名:  ' + Auser.UserName;
end;

procedure TMainForm.WH120Click(Sender: TObject);
begin
  try //弹出公司资料设置窗体
    MainForm.Caption := '货运作业物流系统 ---  ' + WH120.Caption;
    // 显示窗体的标题变化
    WH120Form := TWH120Form.Create(Application);
    WH120Form.ManualDock(Panel1, nil, AlClient)
  except
    MessageBox(0, '操作人员权限设置窗体创建错误', '产生严重例外错误', MB_OK +
      MB_ICONSTOP);
  end;
end;

procedure TMainForm.WH210Click(Sender: TObject);
begin
  try
    Application.CreateForm(TWH210Form, WH210Form);
    WH210Form.ShowModal;
    WH210Form.Free;
  except
    MessageBox(0, '密码改变窗体创建错误', '', MB_OK + MB_ICONSTOP);
  end
end;

procedure TMainForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  if MessageBox(0, '真的要退出本系统吗?', '确认', MB_YESNO + MB_ICONQUESTION) =
    IDYES then
  begin
    DM.UserLogin.Locate('用户名称', Auser.UserName, []);
    // 定位当前用户在数据库中的位置
    //记录用户的退出时间
    DecodeDate(now, year, month, day);
    DecodeTime(Now, Hour, Min, Sec, MSec);
    DM.UserLogin.Edit;
    //记录退出日期
    DM.UserLogin.FieldByName('退出日期').AsString := IntToStr(year) + '年' +
      IntToStr(Month) + '月' + IntToStr(day) + '日';
    DM.UserLogin.FieldByName('退出时间').AsString := IntToStr(Hour) + '时' +
      IntToStr(Min) + '分' + IntToStr(sec) + '秒';
    DM.UserLogin.Post;
    Application.Terminate;
  end;
end;

procedure TMainForm.WH310Click(Sender: TObject);
begin
  try //弹出物流方式设置窗体
    MainForm.Caption := '货运作业物流系统 ---  ' + WH310.Caption;
    // 显示窗体的标题变化
    WH310Form := TWH310Form.Create(Application);
    WH310Form.ManualDock(Panel1, nil, AlClient)
  except
    MessageBox(0, '物流方式设置窗体创建错误', '产生严重例外错误', MB_OK +
      MB_ICONSTOP);
  end;
end;

procedure TMainForm.WH320Click(Sender: TObject);
begin
  try //弹出委托单位设置窗体
    MainForm.Caption := '货运作业物流系统 ---  ' + WH320.Caption;
    // 显示窗体的标题变化
    WH320Form := TWH320Form.Create(Application);
    WH320Form.ManualDock(Panel1, nil, AlClient)
  except
    MessageBox(0, '委托单位设置窗体创建错误', '产生严重例外错误', MB_OK +
      MB_ICONSTOP);
  end;
end;

procedure TMainForm.WH330Click(Sender: TObject);
begin
  try //弹出经营单位设置窗体
    MainForm.Caption := '货运作业物流系统 ---  ' + WH330.Caption;
    // 显示窗体的标题变化
    WH330Form := TWH330Form.Create(Application);
    WH330Form.ManualDock(Panel1, nil, AlClient)
  except
    MessageBox(0, '经营单位设置窗体创建错误', '产生严重例外错误', MB_OK +
      MB_ICONSTOP);
  end;
end;

procedure TMainForm.WH340Click(Sender: TObject);
begin
  try //弹出到港名称设置窗体
    MainForm.Caption := '货运作业物流系统 ---  ' + WH340.Caption;
    // 显示窗体的标题变化
    WH340Form := TWH340Form.Create(Application);
    WH340Form.ManualDock(Panel1, nil, AlClient)
  except
    MessageBox(0, '到港名称设置窗体创建错误', '产生严重例外错误', MB_OK +
      MB_ICONSTOP);
  end;
end;

procedure TMainForm.WH350Click(Sender: TObject);
begin
  try //弹出仓库名称设置窗体
    MainForm.Caption := '货运作业物流系统 ---  ' + WH350.Caption;
    // 显示窗体的标题变化
    WH350Form := TWH350Form.Create(Application);
    WH350Form.ManualDock(Panel1, nil, AlClient)
  except
    MessageBox(0, '仓库名称设置窗体创建错误', '产生严重例外错误', MB_OK +
      MB_ICONSTOP);
  end;
end;

procedure TMainForm.Help110Click(Sender: TObject);
begin
  MessageBox(0, '   货物配送物流管理系统' + #13#10 + '  ' + #13#10 +
    '     版本1.0' + #13#10 + ' ' + #13#10 + '    内部测试', '关于…………',
    MB_OK + MB_ICONINFORMATION);

end;

procedure TMainForm.WH360Click(Sender: TObject);
begin
  try //弹出车辆资料管理设置窗体
    MainForm.Caption := '货运作业物流系统 ---  ' + WH360.Caption;
    // 显示窗体的标题变化
    WH360Form := TWH360Form.Create(Application);
    WH360Form.ManualDock(Panel1, nil, AlClient)
  except
    MessageBox(0, '车辆资料管理窗体创建错误', '产生严重例外错误', MB_OK +
      MB_ICONSTOP);
  end;
end;

procedure TMainForm.WH410Click(Sender: TObject);
begin
  try //弹出客户明细资料设置窗体
    MainForm.Caption := '货运作业物流系统 ---  ' + WH410.Caption;
    // 显示窗体的标题变化
    WH410Form := TWH410Form.Create(Application);
    WH410Form.ManualDock(Panel1, nil, AlClient)
  except
    MessageBox(0, '客户明细资料设置窗体创建错误', '产生严重例外错误', MB_OK +
      MB_ICONSTOP);
  end;
end;

procedure TMainForm.WH420Click(Sender: TObject);
begin
  try //弹出传真窗体
    MainForm.Caption := '货运作业物流系统 ---  ' + WH420.Caption;
    // 显示窗体的标题变化
    WH420Form := TWH420Form.Create(Application);
    WH420Form.ManualDock(Panel1, nil, AlClient)
  except
    MessageBox(0, '传真窗体创建错误', '产生严重例外错误', MB_OK +
      MB_ICONSTOP);
  end;
end;

⌨️ 快捷键说明

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