uclassedit.pas
来自「一.录入学生信息(预计有81个学生」· PAS 代码 · 共 138 行
PAS
138 行
unit uClassEdit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, StdCtrls, ExtCtrls;
type
TfrmClassEdit = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Panel1: TPanel;
cmdEnsure: TButton;
cmdCancel: TButton;
EditCode: TEdit;
EditName: TEdit;
dsQuery: TADODataSet;
Function ReadyData():Boolean;
Function SaveData():Boolean;
procedure cmdCancelClick(Sender: TObject);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure FormCreate(Sender: TObject);
procedure cmdEnsureClick(Sender: TObject);
private
SelID:Integer;
IsCancel:Boolean;
{ Private declarations }
public
{ Public declarations }
end;
Function ShowClassEdit(SelID:Integer):Boolean;
implementation
uses uDM,uPub;
{$R *.dfm}
Function ShowClassEdit(SelID:Integer):Boolean;
var
frmClassEdit: TfrmClassEdit;
begin
Result:=False;
frmClassEdit:=TfrmClassEdit.Create(nil);
frmClassEdit.SelID:=SelID;
if Not frmClassEdit.ReadyData then
begin
frmClassEdit.Free;
Exit;
end;
frmClassEdit.ShowModal;
Result:=Not frmClassEdit.IsCancel;
frmClassEdit.Free;
end;
Function TfrmClassEdit.ReadyData():Boolean;
var TmpSQL:String;
begin
Result:=False;
TmpSQL:='Select * from TClass Where ID='+IntToStr(SelID);
dsQuery.Close;
dsQuery.CommandText:=TmpSQL;
Try
dsQuery.Open;
Except
ShowMessage('读取本地数据文件发生错误!');
Exit;
end;
if Not dsQuery.IsEmpty then
begin
dsQuery.Edit;
EditCode.Text:=dsQuery.fieldByName('ClassCode').AsString;
EditName.Text:=dsQuery.fieldByName('ClassName').AsString;
end
else
begin
dsQuery.Append;
dsQuery.Edit;
end;
Result:=True;
end;
Function TfrmClassEdit.SaveData():Boolean;
begin
Result:=False;
if EditCode.Text='' then
begin
ShowMessage('班级编号尚未输入!');
EditCode.SetFocus;
Exit;
end;
if EditName.Text='' then
begin
ShowMessage('班级名称尚未输入!');
EditName.SetFocus;
Exit;
end;
dsQuery.FieldByName('ClassCode').AsString:=EditCode.Text;
dsQuery.FieldByName('ClassName').AsString:=EditName.Text;
Try
dsQuery.Post;
Except
ShowMessage('存储数据发生错误,可能您输入的班级编号已经被使用!');
Exit;
End;
Result:=True;
end;
procedure TfrmClassEdit.cmdCancelClick(Sender: TObject);
begin
Close;
end;
procedure TfrmClassEdit.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
nextfocus(self.ActiveControl,Key,Shift);
end;
procedure TfrmClassEdit.FormCreate(Sender: TObject);
begin
IsCancel:=True;
end;
procedure TfrmClassEdit.cmdEnsureClick(Sender: TObject);
begin
if Not SaveData then Exit;
IsCancel:=False;
Close;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?