📄 xujiguanli.~pas
字号:
unit xujiguanli;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, Grids, DBGrids, DBCtrls, StdCtrls, DB, DBTables,
ComCtrls, Buttons;
type
TxuejiguanliForm = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
DataSource1: TDataSource;
Table1: TTable;
Panel1: TPanel;
GroupBox1: TGroupBox;
Label1: TLabel;
Edit1: TEdit;
Button1: TButton;
DBNavigator1: TDBNavigator;
DBGrid1: TDBGrid;
Splitter1: TSplitter;
Button2: TButton;
TabSheet2: TTabSheet;
Panel2: TPanel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Edit2: TEdit;
Edit3: TEdit;
ComboBox1: TComboBox;
Edit6: TEdit;
Memo1: TMemo;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
Query1: TQuery;
Query1Xuehao: TStringField;
Query1Xingming: TStringField;
Query1Xingbie: TStringField;
Query1Banji: TStringField;
Edit4: TEdit;
Label8: TLabel;
Edit5: TEdit;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
xuejibiangengQuery: TQuery;
Table1Xuehao: TStringField;
Table1Xingming: TStringField;
Table1Xingbie: TStringField;
Table1Banji: TStringField;
Table1Xuejibiangeng: TStringField;
Table1Beizhu: TStringField;
Table1Xuejibiangengshijian: TStringField;
xuejibiangengQueryXuehao: TStringField;
xuejibiangengQueryXingming: TStringField;
xuejibiangengQueryXingbie: TStringField;
xuejibiangengQueryBanji: TStringField;
xuejibiangengQueryXuejibiangeng: TStringField;
xuejibiangengQueryBeizhu: TStringField;
xuejibiangengQueryXuejibiangengshijian: TStringField;
Label13: TLabel;
procedure FormShow(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Edit1Change(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Edit2Change(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure BitBtn1Click(Sender: TObject);
procedure TabSheet1Show(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
xuejiguanliForm: TxuejiguanliForm;
qx:string;
implementation
{$R *.dfm}
procedure TxuejiguanliForm.FormShow(Sender: TObject);
begin
Table1.Open ;
end;
procedure TxuejiguanliForm.Button1Click(Sender: TObject);
begin
if Edit1.Text='' then
begin
showmessage('请输入你要查询的学号!');
Edit1.SetFocus ;
exit;
end;
with table1 do
begin
SetKey ;
FieldByName('xuehao').AsString :=Edit1.Text;
if not GotoKey then
begin
MessageDlg('没有找到记录!',mtError,[mbOk],0);
Edit1.SetFocus ;
Edit1.Focused ;
end
else
showmessage('找到该记录!');
end;
end;
procedure TxuejiguanliForm.Edit1Change(Sender: TObject);
begin
if length(Edit1.Text)=8 then
begin
Button1.SetFocus ;
Button1.Focused;
end;
end;
procedure TxuejiguanliForm.Button2Click(Sender: TObject);
begin
if qx='普通用户' then
begin
messageDlg('你不是高级用户或管理员,无权执行本项操作!',mtWarning,[mbOk],0);
exit;
end;
if MessageDlg('确实要删除学号为'+Table1xuehao.Value +'的学籍变更记录吗',mtConfirmation,[mbYes,mbNo],0)=mrNo then
exit
else
begin
Table1.Delete;
Showmessage('记录成功删除!');
end;
end;
procedure TxuejiguanliForm.Button3Click(Sender: TObject);
begin
showmessage(memo1.Text );
end;
procedure TxuejiguanliForm.Edit2Change(Sender: TObject);
begin
if length(Edit2.Text)=8 then
begin
Query1.Close;
Query1.sql.Clear ;
Query1.Params.Clear ;
Query1.Params.CreateParam(ftstring,'xh',ptinput).AsString :=Edit2.Text ;
Query1.SQL.Add('select xuehao,xingming,xingbie,banji from students where xuehao=:xh;');
Query1.ExecSQL ;
Query1.Open ;
if Query1.RecordCount=0 then
begin
showmessage('无此学号,学籍变更无意义!');
exit;
end;
Bitbtn1.Enabled :=True;
ComboBox1.SetFocus ;
Edit3.Text:=Query1xingming.Value ;
Edit4.Text:=Query1xingbie.Value ;
Edit5.Text :=Query1banji.Value ;
Edit6.Text :=DateToStr(date);
Query1.Close;
end;
end;
procedure TxuejiguanliForm.BitBtn2Click(Sender: TObject);
begin
close;
end;
procedure TxuejiguanliForm.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TxuejiguanliForm.BitBtn1Click(Sender: TObject);
begin
if qx='普通用户' then
begin
messageDlg('你不是高级用户或管理员,无权执行本项操作!',mtWarning,[mbOk],0);
exit;
end;
if (Edit3.Text='')or(Edit2.Text='')or(Edit5.Text='')or(Edit6.Text ='') then
Begin
MessageDlg('资料填写不全!',mtError,[mbOk],0);
Edit2.SetFocus ;
exit;
end;
if ComboBox1.Text ='' then
begin
MessageDlg('学籍变更项不得为空!',mtWarning,[mbOk],0);
ComboBox1.SetFocus ;
exit;
end
else
begin
Query1.Close;
Query1.SQL.Clear ;
Query1.Params.Clear ;
Query1.Params.CreateParam(ftstring,'xh',ptinput).AsString :=Edit2.Text ;
Query1.Params.CreateParam(ftstring,'xm',ptinput).AsString :=Edit3.Text ;
Query1.Params.CreateParam(ftstring,'xb',ptinput).AsString :=Edit4.Text ;
Query1.Params.CreateParam(ftstring,'bj',ptinput).AsString :=Edit5.Text ;
Query1.Params.CreateParam(ftstring,'xjbg',ptinput).AsString :=ComboBox1.Text ;
Query1.Params.CreateParam(ftstring,'bz',ptinput).AsString :=memo1.Text;
Query1.Params.CreateParam(ftstring,'sj',ptinput).AsString :=Edit6.Text ;
Query1.SQL.Add('insert into xuejibiangeng (xuehao,xingming,xingbie,banji,xuejibiangeng,beizhu,xuejibiangengshijian) values (:xh,:xm,:xb,:bj,:xjbg,:bz,:sj);');
Query1.ExecSQL ;
showmessage('添加成功');
Query1.Close;
Table1.Refresh ;
Edit2.Clear ;
Edit3.Clear ;
Edit4.Clear ;
Edit5.Clear ;
Edit6.Clear ;
ComboBox1.Text :='';
memo1.Clear ;
Bitbtn1.Enabled :=False;
end;
end;
procedure TxuejiguanliForm.TabSheet1Show(Sender: TObject);
begin
if qx='普通用户' then
begin
DBGrid1.ReadOnly :=True;
end;
Edit1.SetFocus ;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -