📄 dbparaunit.pas
字号:
unit DBParaUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls, ExtCtrls, ExtDlgs, Buttons, DBTables, DB,
DBClient, MConnect, SConnect, Menus;
type
TDBParaForm = class(TForm)
Button1: TButton;
Button2: TButton;
GroupBox1: TGroupBox;
Panel1: TPanel;
Label1: TLabel;
ComboBox1: TComboBox;
Panel2: TPanel;
Panel3: TPanel;
Panel4: TPanel;
Label2: TLabel;
ComboBox2: TComboBox;
Label3: TLabel;
Edit1: TEdit;
Label4: TLabel;
Edit2: TEdit;
Label5: TLabel;
Edit3: TEdit;
Edit4: TEdit;
Label6: TLabel;
Edit5: TEdit;
Label7: TLabel;
Edit6: TEdit;
Label8: TLabel;
Edit7: TEdit;
Edit8: TEdit;
Button5: TButton;
Panel5: TPanel;
Label9: TLabel;
ComboBox3: TComboBox;
Panel6: TPanel;
Panel7: TPanel;
Panel8: TPanel;
Label10: TLabel;
Edit9: TEdit;
Label11: TLabel;
Edit10: TEdit;
Label12: TLabel;
Edit11: TEdit;
Label13: TLabel;
Edit12: TEdit;
Label14: TLabel;
Edit13: TEdit;
Label15: TLabel;
Edit14: TEdit;
Label16: TLabel;
Edit15: TEdit;
Label17: TLabel;
Edit16: TEdit;
Label18: TLabel;
Edit17: TEdit;
Label19: TLabel;
Edit18: TEdit;
Label20: TLabel;
Edit19: TEdit;
Label21: TLabel;
Edit20: TEdit;
Label22: TLabel;
Edit21: TEdit;
Label23: TLabel;
Edit22: TEdit;
Label24: TLabel;
Edit23: TEdit;
Label25: TLabel;
Edit24: TEdit;
Label26: TLabel;
Edit26: TEdit;
Edit25: TEdit;
Panel11: TPanel;
CheckBox1: TCheckBox;
Button3: TButton;
Button4: TButton;
Panel10: TPanel;
Panel9: TPanel;
Label27: TLabel;
Edit28: TEdit;
Label28: TLabel;
Edit29: TEdit;
Label29: TLabel;
Edit30: TEdit;
Label30: TLabel;
Edit31: TEdit;
Label31: TLabel;
Edit32: TEdit;
Edit33: TEdit;
Label32: TLabel;
Edit34: TEdit;
Label33: TLabel;
Edit27: TEdit;
Label34: TLabel;
Edit35: TEdit;
Label35: TLabel;
Edit36: TEdit;
Label36: TLabel;
Edit37: TEdit;
Label37: TLabel;
ComboBox4: TComboBox;
Panel12: TPanel;
Label38: TLabel;
Label39: TLabel;
Label40: TLabel;
Edit38: TEdit;
Edit39: TEdit;
Edit41: TEdit;
Edit42: TEdit;
Edit40: TEdit;
Label41: TLabel;
Label42: TLabel;
Edit43: TEdit;
Label43: TLabel;
Edit44: TEdit;
Label44: TLabel;
Edit45: TEdit;
Edit46: TEdit;
Label45: TLabel;
Edit47: TEdit;
Label46: TLabel;
Edit48: TEdit;
PopupMenu1: TPopupMenu;
A1: TMenuItem;
N1: TMenuItem;
N2: TMenuItem;
BDE1: TMenuItem;
ADO1: TMenuItem;
DCOM1: TMenuItem;
SOCKET1: TMenuItem;
WEB1: TMenuItem;
SOAP1: TMenuItem;
CORBA1: TMenuItem;
PBSQLCA1: TMenuItem;
Label47: TLabel;
ComboBox5: TComboBox;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Edit4Enter(Sender: TObject);
procedure Edit3Exit(Sender: TObject);
procedure Edit8Enter(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure ComboBox3Change(Sender: TObject);
procedure Edit25Enter(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Edit33Enter(Sender: TObject);
procedure Edit42Enter(Sender: TObject);
procedure Edit46Enter(Sender: TObject);
procedure A1Click(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure BDE1Click(Sender: TObject);
private
{ Private declarations }
procedure WMNcActivate(var Msg: TMessage); message WM_NCACTIVATE;
procedure CustomView;
public
{ Public declarations }
TheUserName: string;
end;
var
DBParaForm: TDBParaForm;
implementation
uses
MainUnit, AdoConEdEx;
{$R *.dfm}
procedure TDBParaForm.WMNcActivate(var Msg: TMessage);
begin
if not LongBool(Msg.WParam) then
begin
Edit3Exit(nil);
Msg.Result := 1;
end;
inherited;
end;
procedure TDBParaForm.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action := caFree;
DBParaForm := nil;
end;
procedure TDBParaForm.Button1Click(Sender: TObject);
begin
if ComboBox1.PopupMenu = PopupMenu1 then
CustomView;
TheMainForm.SetDBProperty(TheUserName);
Close;
end;
procedure TDBParaForm.Button2Click(Sender: TObject);
begin
Close;
end;
procedure TDBParaForm.FormCreate(Sender: TObject);
begin
try
Session.GetAliasNames(ComboBox2.Items);
except
end;
TheUserName := '';
end;
procedure TDBParaForm.Edit4Enter(Sender: TObject);
begin
if Edit3.MaxLength = 0 then
begin
Edit3.MaxLength := 16;
Edit3.Text := TheMainForm.ProcessPassword('Edit3', Edit3.Text, True);
end;
Edit3.SetFocus;
TEdit(Sender).Visible := False;
end;
procedure TDBParaForm.Edit3Exit(Sender: TObject);
begin
Edit4.Visible := True;
if Edit3.MaxLength = 16 then
begin
Edit3.MaxLength := 0;
Edit3.Text := TheMainForm.ProcessPassword('Edit3', Edit3.Text);
end;
Edit8.Visible := True;
if Edit7.MaxLength = 16 then
begin
Edit7.MaxLength := 0;
Edit7.Text := TheMainForm.ProcessPassword('Edit7', Edit7.Text);
end;
Edit25.Visible := True;
if Edit24.MaxLength = 16 then
begin
Edit24.MaxLength := 0;
Edit24.Text := TheMainForm.ProcessPassword('Edit24', Edit24.Text);
end;
Edit33.Visible := True;
if Edit32.MaxLength = 16 then
begin
Edit32.MaxLength := 0;
Edit32.Text := TheMainForm.ProcessPassword('Edit32', Edit32.Text);
end;
Edit42.Visible := True;
if Edit41.MaxLength = 16 then
begin
Edit41.MaxLength := 0;
Edit41.Text := TheMainForm.ProcessPassword('Edit41', Edit41.Text);
end;
Edit46.Visible := True;
if Edit45.MaxLength = 16 then
begin
Edit45.MaxLength := 0;
Edit45.Text := TheMainForm.ProcessPassword('Edit45', Edit45.Text);
end;
end;
procedure TDBParaForm.Edit8Enter(Sender: TObject);
begin
if Edit7.MaxLength = 0 then
begin
Edit7.MaxLength := 16;
Edit7.Text := TheMainForm.ProcessPassword('Edit7', Edit7.Text, True);
end;
Edit7.SetFocus;
TEdit(Sender).Visible := False;
end;
procedure TDBParaForm.Button5Click(Sender: TObject);
var
Str: String;
begin
Str := Edit5.Text;
with TConnEditFormEx.Create(Application) do
begin
try
Str := Edit(Str);
if Pos('USER ID', UpperCase(Str)) > 0 then
Str := TheMainForm.ReplaceString(Str, 'User ID', ';', 'User ID=');
if Pos('PASSWORD', UpperCase(Str)) > 0 then
Str := TheMainForm.ReplaceString(Str, 'Password', ';', 'Password=');
Edit5.Text := Str;
finally
Free;
end;
end;
end;
procedure TDBParaForm.ComboBox1Change(Sender: TObject);
begin
if ComboBox1.Items[ComboBox1.ItemIndex] = 'BDE' then
begin
Panel2.Visible := True;
Panel3.Visible := False;
Panel4.Visible := False;
Panel12.Visible := False;
end;
if ComboBox1.Items[ComboBox1.ItemIndex] = 'ADO' then
begin
Panel2.Visible := False;
Panel3.Visible := True;
Panel4.Visible := False;
Panel12.Visible := False;
end;
if ComboBox1.Items[ComboBox1.ItemIndex] = 'MIDAS' then
begin
Panel2.Visible := False;
Panel3.Visible := False;
Panel4.Visible := True;
Panel12.Visible := False;
end;
if ComboBox1.Items[ComboBox1.ItemIndex] = 'PBSQLCA' then
begin
Panel2.Visible := False;
Panel3.Visible := False;
Panel4.Visible := False;
Panel12.Visible := True;
end;
end;
procedure TDBParaForm.ComboBox3Change(Sender: TObject);
begin
if ComboBox3.Items[ComboBox3.ItemIndex] = 'DCOM' then
begin
Panel6.Visible := True;
Panel7.Visible := False;
Panel8.Visible := False;
Panel9.Visible := False;
Panel10.Visible := False;
end;
if ComboBox3.Items[ComboBox3.ItemIndex] = 'SOCKET' then
begin
Panel6.Visible := False;
Panel7.Visible := True;
Panel8.Visible := False;
Panel9.Visible := False;
Panel10.Visible := False;
end;
if ComboBox3.Items[ComboBox3.ItemIndex] = 'WEB' then
begin
Panel6.Visible := False;
Panel7.Visible := False;
Panel8.Visible := True;
Panel9.Visible := False;
Panel10.Visible := False;
end;
if ComboBox3.Items[ComboBox3.ItemIndex] = 'SOAP' then
begin
Panel6.Visible := False;
Panel7.Visible := False;
Panel8.Visible := False;
Panel9.Visible := True;
Panel10.Visible := False;
end;
if ComboBox3.Items[ComboBox3.ItemIndex] = 'CORBA' then
begin
Panel6.Visible := False;
Panel7.Visible := False;
Panel8.Visible := False;
Panel9.Visible := False;
Panel10.Visible := True;
end;
end;
procedure TDBParaForm.Edit25Enter(Sender: TObject);
begin
if Edit24.MaxLength = 0 then
begin
Edit24.MaxLength := 16;
Edit24.Text := TheMainForm.ProcessPassword('Edit24', Edit24.Text, True);
end;
Edit24.SetFocus;
TEdit(Sender).Visible := False;
end;
procedure TDBParaForm.FormShow(Sender: TObject);
begin
ComboBox1Change(nil);
ComboBox3Change(nil);
end;
procedure TDBParaForm.Button3Click(Sender: TObject);
begin
TheMainForm.SetDBProperty;
if TheMainForm.ConnectToDB then
begin
TButton(Sender).Enabled := False;
Button4.Enabled := True;
end;
end;
procedure TDBParaForm.Button4Click(Sender: TObject);
begin
if TheMainForm.DisConnectToDB(True) then
begin
Button3.Enabled := True;
TButton(Sender).Enabled := False;
end;
end;
procedure TDBParaForm.Edit33Enter(Sender: TObject);
begin
if Edit32.MaxLength = 0 then
begin
Edit32.MaxLength := 16;
Edit32.Text := TheMainForm.ProcessPassword('Edit32', Edit32.Text, True);
end;
Edit32.SetFocus;
TEdit(Sender).Visible := False;
end;
procedure TDBParaForm.Edit42Enter(Sender: TObject);
begin
if Edit41.MaxLength = 0 then
begin
Edit41.MaxLength := 16;
Edit41.Text := TheMainForm.ProcessPassword('Edit41', Edit41.Text, True);
end;
Edit41.SetFocus;
TEdit(Sender).Visible := False;
end;
procedure TDBParaForm.Edit46Enter(Sender: TObject);
begin
if Edit45.MaxLength = 0 then
begin
Edit45.MaxLength := 16;
Edit45.Text := TheMainForm.ProcessPassword('Edit45', Edit45.Text, True);
end;
Edit45.SetFocus;
TEdit(Sender).Visible := False;
end;
procedure TDBParaForm.A1Click(Sender: TObject);
var
i: Integer;
begin
for i := 3 to 10 do
PopupMenu1.Items[i].Checked := True;
end;
procedure TDBParaForm.N1Click(Sender: TObject);
var
i: Integer;
begin
for i := 3 to 10 do
PopupMenu1.Items[i].Checked := False;
CustomView;
end;
procedure TDBParaForm.BDE1Click(Sender: TObject);
begin
TMenuItem(Sender).Checked := not TMenuItem(Sender).Checked;
end;
procedure TDBParaForm.CustomView;
var
i: Integer;
begin
i := ComboBox1.ItemIndex;
if i = 2 then
i := i + ComboBox3.ItemIndex
else
if i = 3 then
i := 7;
PopupMenu1.Items[i + 3].Checked := True;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -