unit1.pas

来自「公交行业的管理系统」· PAS 代码 · 共 165 行

PAS
165
字号
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls,Unit2, ExtCtrls;

type
TBHForm = class(TForm)
    Panel1: TPanel;
    btnSndRv: TButton;
    GroupBox2: TGroupBox;
    RadioGroup1: TRadioGroup;
    GroupBox1: TGroupBox;
    lblConn: TLabel;
    Label1: TLabel;
    lblPhoneNum: TLabel;
    lblUserName: TLabel;
    cmbPhoneName: TComboBox;
    editPWD: TEdit;
    editPhoneNum: TEdit;
    editUserName: TEdit;
    DialUp: TButton;
    HangUp: TButton;
    OpenDialog1: TOpenDialog;
    btnExit: TButton;
    procedure btnExitClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure DialUpClick(Sender: TObject);
    procedure cmbPhoneNameChange(Sender: TObject);
    procedure editPWDChange(Sender: TObject);
    procedure HangUpClick(Sender: TObject);
    procedure btnSndRvClick(Sender: TObject);
    procedure RadioGroup1Click(Sender: TObject);
    procedure editPhoneNumChange(Sender: TObject);

  private
    { Private declarations }
    procedure SetEntries;
  public
    { Public declarations }
  end;

var
  BHForm: TBHForm;
  TTest : TDialUp;


function ShellExecute(hwnd: Longint; lpOperation: PAnsiChar; lpFile: PAnsiChar;
                       lpParameters: PAnsiChar; lpDirectory: PAnsiChar;
                       nShowCmd: Integer): Longint; stdcall;


implementation

uses Unit3;

{$R *.DFM}
procedure TBHForm.btnExitClick(Sender: TObject);
var
  i : integer;
  sEntry : String;
begin
  BHForm.Close;
end;

procedure TBHForm.FormCreate(Sender: TObject);
begin
  TTest:=TDialUp.Create(self);
  RadioGroup1.ItemIndex:=0;
end;

procedure TBHForm.DialUpClick(Sender: TObject);
begin
  TTest.Password:= editPWD.Text;
  if RadioGroup1.ItemIndex =0 then
    TTest.Dial(NUM_PHONEBOOK)
  else
    TTest.Dial(NUM_INPUT);
end;

procedure TBHForm.cmbPhoneNameChange(Sender: TObject);
begin
  TTest.EntryName:=cmbPhoneName.Text;
  editUserName.Text:=TTest.UserName;
end;

procedure TBHForm.editPWDChange(Sender: TObject);
begin
  TTest.Password:=editPWD.Text;
end;

procedure TBHForm.HangUpClick(Sender: TObject);
begin
  OKBottomDlg.Show ;
  OKBottomDlg.lblHint.Caption:='正在断开连接!';
  OKBottomDlg.lblHint.Refresh;
  TTest.HangUp;
  OKBottomDlg.Hide;
end;

procedure TBHForm.btnSndRvClick(Sender: TObject);
var
  sFileName: string;
begin
  sFileName:=ExtractFilepath(Application.ExeName);
  sFileName:=sFileName+'msimn.exe';
//  OpenDialog1.FileName:='';
//  OpenDialog1.Execute;
//  sFileName:=OpenDialog1.FileName;
//  FileToFind := FileSearch('OutLook.exe');
  if sFileName <> '' then
    ShellExecute(0, nil, PChar(sFileName), nil, nil, SW_NORMAL);;
//ShellExecute(Handle,'Open','mailto:','','',SW_NORMAL);
end;

procedure TBHForm.RadioGroup1Click(Sender: TObject);
begin
  if RadioGroup1.ItemIndex=0 then //使用已有连接
    begin
      lblConn.Visible:=true;
      cmbPhoneName.Visible:=true;
      lblPhoneNum.Visible:=false;
      editPhoneNum.Visible:=false;
      editUserName.ReadOnly:=true;
      SetEntries;
    end
  else  //自定义连接
    begin
      lblConn.Visible:=false;
      cmbPhoneName.Visible:=false;
      lblPhoneNum.Visible:=true;
      editPhoneNum.Visible:=true;
      editUserName.ReadOnly:=false;
      editUserName.Text:='';
    end;
end;

procedure TBHForm.SetEntries;
var
  i : integer;
  sEntry : String;
begin
  TTest.GetEntries();
  cmbPhoneName.Clear;
  for i:=0 to TTest.Entries.Count-1 do
    begin
      sEntry:=TTest.Entries[i];
      cmbPhoneName.Items.Add(sEntry);
    end;
  cmbPhoneName.ItemIndex:=0;
  cmbPhoneNameChange(self);
end;


function ShellExecute;           external 'shell32.dll' name 'ShellExecuteA';

procedure TBHForm.editPhoneNumChange(Sender: TObject);
begin
  TTest.PhoneNum:=editPhoneNum.Text;
end;

end.

⌨️ 快捷键说明

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