📄 point_pas.pas
字号:
unit point_pas;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Db, DBTables, Grids, DBGrids, ComCtrls, RXCtrls, ExtCtrls, StdCtrls,
Buttons, DBCtrls;
type
Tpoint = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
Panel2: TPanel;
DBGrid2: TDBGrid;
Edit8: TEdit;
Edit9: TEdit;
Edit10: TEdit;
Edit11: TEdit;
DBGrid1: TDBGrid;
Panel3: TPanel;
Panel4: TPanel;
BitBtn1: TBitBtn;
BitBtn5: TBitBtn;
BitBtn2: TBitBtn;
BitBtn6: TBitBtn;
Panel5: TPanel;
DBLookupComboBox2: TDBLookupComboBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label6: TLabel;
BitBtn3: TBitBtn;
Edit12: TEdit;
Label5: TLabel;
Label7: TLabel;
edit1: TComboBox;
BitBtn8: TBitBtn;
BitBtn4: TBitBtn;
BitBtn7: TBitBtn;
BitBtn9: TBitBtn;
procedure Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit3KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit4KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit6KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure BitBtn3Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn6Click(Sender: TObject);
procedure DBGrid1CellClick(Column: TColumn);
procedure DBGrid1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit8Change(Sender: TObject);
procedure Edit9KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit10KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit8KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit11KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure BitBtn4Click(Sender: TObject);
procedure BitBtn7Click(Sender: TObject);
procedure Edit6Exit(Sender: TObject);
procedure BitBtn10Click(Sender: TObject);
procedure Edit5Exit(Sender: TObject);
procedure PageControl1Change(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Edit2Exit(Sender: TObject);
procedure Edit12Change(Sender: TObject);
procedure DBLookupComboBox2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure edit1Change(Sender: TObject);
procedure BitBtn8Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Edit10KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
end;
var
point: Tpoint;
implementation
uses dm_point_pas,menu,add_point_pas,point_print_pas,password_unit;
{$R *.DFM}
procedure Tpoint.Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
//if key=vk_return then
//edit2.SetFocus ;
end;
procedure Tpoint.Edit2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
//if key=vk_return then
//edit3.SetFocus ;
end;
procedure Tpoint.Edit3KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
//if key=vk_return then
//edit4.SetFocus ;
end;
procedure Tpoint.Edit4KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
//if key=vk_return then
//edit6.SetFocus ;
end;
procedure Tpoint.Edit6KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
//if key=vk_return then
//edit5.SetFocus ;
end;
procedure Tpoint.BitBtn3Click(Sender: TObject);
begin
with dm_point do
begin
q_point.close;
q_point_view.close;
end;
close;
end;
procedure Tpoint.FormShow(Sender: TObject);
var
i1,i2,i3:integer;
f1,f2:real;
begin
if (screen.Height<600) and( screen.Width<800) then
begin
scaled:=true;
self.height:=round(429*longint(screen.height)*96 / 600/screen.pixelsperinch);
self.width :=round( 690 *longint(screen.width)*96 / 800/screen.pixelsperinch);
ScaleControls(screen.width, 800);
ScaleControls(96,screen.pixelsperinch);
f1:=screen.width*96/800/screen.pixelsperinch;
f2:=screen.width/800;
with dbgrid1 do
begin
i1:=columns.Count;
i3:=round(12*f1);if i3<7 then i3:=7;
Label7.font.size:=i3-1;
Label5.font.size:=i3-1;
edit12.font.size:=i3-1;
edit1.font.size:=i3-1;
PageControl1.font.size:=i3-1;
BitBtn1.font.size:=i3-1;
BitBtn2.font.size:=i3-1;
BitBtn6.font.size:=i3-1;
BitBtn3.font.size:=i3-1;
//panel1.font.size:=20;
Label1.font.size:=i3-1;
Label2.font.size:=i3-1;
Label3.font.size:=i3-1;
Label4.font.size:=i3-1;
Label6.font.size:=i3-1;
BitBtn4.font.size:=i3-1;
BitBtn7.font.size:=i3-1;
BitBtn8.font.size:=i3-1;
BitBtn9.font.size:=i3-1;
DBLookupComboBox2.font.size:=i3-1;
edit8.font.size:=i3-1;
edit9.font.size:=i3-1;
edit10.font.size:=i3-1;
edit11.font.size:=i3-1;
edit12.font.size:=i3-1;
point.Font.Size:=i3-1;
font.Size:=i3-1;
for i2:=0 TO i1-1 DO
begin
columns[i2].title.font.size:=i3-1;
columns[i2].width:=round(columns[i2].width*f2);
end;
end;
with dbgrid2 do
begin
i1:=columns.Count;
font.Size:=i3-1;
for i2:=0 TO i1-1 DO
begin
columns[i2].title.font.size:=i3-1;
columns[i2].width:=round(columns[i2].width*f2);
end;
end;
end
else
begin
self.Height:=429;
self.Width:=682;
end;
if not assigned(DM_point) then
Application.CreateForm(TDM_point, dm_point);
with dm_point do
begin
q_point.close;
q_point.open;
q_point_ls.Close;
q_point_ls.open;
q_point_view.close;
q_point_view.open;
q_line.close;
q_line.open;
end;
with dm_point.q_line do
begin
first;
//edit1.Clear ;
while not eof do
begin
edit1.Items.Add(fieldbyname('linename').asstring);
next;
end;
end;
//edit1.SetFocus ;
//bitbtn5.Enabled:=false;
//bitbtn6.Enabled:=false;
edit12.Text:='';
edit1.text:='';
dblookupcombobox2.KeyValue:=null;
//edit7.text:='';
edit8.text:='';
edit9.text:='';
edit10.text:='';
edit11.text:='';
PageControl1.ActivePage:=TabSheet1;
edit1.SetFocus ;
//edit6.text:='';
end;
procedure Tpoint.BitBtn1Click(Sender: TObject);
var bookmark1:Tbookmark;
begin
//with dm_point.q_point do
//begin
//close;
//open;
//append;
//edit;
//post;
//end;
//bitbtn1.Enabled:=false;
//3bitbtn2.Enabled:=false;
add_point:=tadd_point.Create(self);
with dm_point.q_point do
begin
add_point.Caption:='增加巡更点信息';
add_point.edit1.Text:=fieldbyname('linename').asstring;
add_point.ShowModal ;
add_point.free;
end;
//bitbtn5.Enabled:=true;
//bitbtn6.Enabled:=true;
//edit1.text:='';
//edit2.text:='';
//edit3.text:='';
//edit4.text:='';
//edit5.text:='';
//edit6.text:='';
edit1.SetFocus ;
//bitbtn1.Enabled:=false;
end;
procedure Tpoint.BitBtn5Click(Sender: TObject);
var bookmark1:tbookmark ;
recno1,recno2:integer;
begin
{dm_point.q_find.Close;
dm_POINT.Q_FIND.OPEN;
with dm_point.q_point do
begin
open;
//last;
bookmark1:=getbookmark;
recno1:=RecNo;
//label1.Caption:=inttostr(recno1);
if recno1<0 then
begin //增加信息
//edit;
try
if edit1.Text='' then
begin
Application.MessageBox('请输入线路!','消息',MB_ICONINFORMATION);
edit1.SetFocus;
//gotobookmark(bookmark1);
//freebookmark(bookmark1);
exit;
end;
if edit2.Text='' then
begin
Application.MessageBox('请输入钮号!','消息',MB_ICONINFORMATION);
edit2.SetFocus ;
exit;
end;
if edit6.Text='' then
begin
Application.MessageBox('请输入次序号!') ;
edit6.SetFocus ;
//gotobookmark(bookmark1);
//freebookmark(bookmark1);
exit;
end;
if dm_point.q_find.Locate('linename;node',vararrayOf([edit1.text,edit2.text]),[loCaseInsensitive]) then
begin
Application.MessageBox('该线路上已有相同的钮号!','消息',MB_ICONINFORMATION);
edit2.SetFocus ;
edit2.Text:='';
exit;
end;
if dm_point.q_find.Locate('linename;lseq',vararrayOf([edit1.text,strtoint(edit6.text)]),[loCaseInsensitive]) then
begin
Application.MessageBox('该线路上已有相同的次序号!','消息',MB_ICONINFORMATION);
edit6.SetFocus;
edit6.text:='';
exit;
end;
//open;
append;
//gotobookmark(bookmark1);
//freebookmark(bookmark1);
edit;
fieldbyname('linename').asstring:=uppercase(edit1.Text) ;
fieldbyname('node').asstring:=uppercase(edit2.Text);
fieldbyname('name').asstring:=uppercase(edit3.Text);
fieldbyname('nodeplace').asstring:=uppercase(edit4.Text);
fieldbyname('ntime').asinteger:=strtoint(edit5.text);
fieldbyname('lseq').asinteger:=strtoint(edit6.text);
post;
except
begin
Application.MessageBox('数据录入有误,请重新输入','消息',MB_ICONINFORMATION);
exit;
end;
end;
end //增加
else //修改
begin
bookmark1:=getbookmark;
try
if edit1.Text='' then
begin
Application.MessageBox('请输入线路!','消息',MB_ICONINFORMATION);
//gotobookmark(bookmark1);
//freebookmark(bookmark1);
exit;
end;
if edit2.Text='' then
begin
Application.MessageBox('请输入钮号!','消息',MB_ICONINFORMATION);
exit;
end;
if edit6.Text='' then
begin
Application.MessageBox('请输入次序号!') ;
//gotobookmark(bookmark1);
//freebookmark(bookmark1);
exit;
end;
if Locate('linename;node',vararrayOf([edit1.text,edit2.text]),[loCaseInsensitive]) then
begin
recno2:=RecNo;
if recno1<>recno2 then
begin
Application.MessageBox('该线路上已有相同的钮号!','消息',MB_ICONINFORMATION);
gotobookmark(bookmark1);
exit;
end;
end;
if Locate('linename;lseq',vararrayOf([edit1.text,strtoint(edit6.text)]),[loCaseInsensitive]) then
begin
recno2:=RecNo;
if recno1<>recno2 then
begin
Application.MessageBox('该线路上已有相同的次序号!','消息',MB_ICONINFORMATION);
gotobookmark(bookmark1);
exit;
end;
end;
open;
gotobookmark(bookmark1);
edit;
fieldbyname('linename').asstring:=uppercase(edit1.Text) ;
fieldbyname('node').asstring:=uppercase(edit2.Text);
fieldbyname('name').asstring:=uppercase(edit3.Text);
fieldbyname('nodeplace').asstring:=uppercase(edit4.Text);
fieldbyname('ntime').asinteger:=strtoint(edit5.text);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -