📄 gygl.pas
字号:
unit gygl;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, StdCtrls, Grids, DBGrids, DB, DBTables, ExtCtrls, Buttons;
type
Tgygl_Form = class(TForm)
PopupMenu1:TPopupMenu;
Query1: TQuery;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
N1: TMenuItem;
N2: TMenuItem;
GroupBox1: TGroupBox;
Label1: TLabel;
xm_LEdit: TEdit;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
procedure DBGrid1DrawColunmnCell(sender: TObject;const Rect:TRect;DataCol:Integer;
Column:TColumn;State:TGridDrawState);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender:TObject;var Action:TCloseAction);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
modi:Boolean;
end;
var
gygl_Form: Tgygl_Form;
implementation
uses main, modigy;
{$R *.dfm}
///////////////////////////////////////////
procedure Tgygl_Form.DBGrid1DrawColunmnCell(sender: TObject;const Rect:TRect;DataCol:Integer;
Column:TColumn;State:TGridDrawState);
begin
if
gdSelected in state then Exit;
case Query1.FieldByName('状态').AsInteger of
0:(sender as TDBGrid).Canvas.Brush.Color:=clWindow;
1:(sender as TDBGrid).Canvas.Brush.Color:=clYellow;
2:(sender as TDBGrid).Canvas.Brush.Color:=clRed;
3:(sender as TDBGrid).Canvas.Brush.Color:=clgreen;
end;
DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
/////////////////////////////////////////////
procedure Tgygl_Form.N1Click(Sender: TObject);
begin
if Query1.FieldByName('状态').AsInteger=1 then
begin
modi:=false;
Application.CreateForm(Tmodigy_Form,modigy_Form);
modigy_Form.Show;
end
else
if Query1.FieldByName('状态').AsInteger=0 then
begin
ShowMessage('该同学还没到,请选择其他同学!');
exit;
end
else
begin
ShowMessage('该同学已经安排公寓,请选择其他同学!');
exit;
end;
end;
procedure Tgygl_Form.N2Click(Sender: TObject);
begin
if (Query1.FieldByName('状态').AsInteger=2) or (Query1.FieldByName('状态').AsInteger=3) then
begin
modi:=true;
Application.CreateForm(TModigy_Form,modigy_Form);
modigy_Form.Show;
end
else if Query1.FieldByName('状态').AsInteger=0 then
begin
ShowMessage('该同学还没到,请选择其他同学!');
exit;
end
else
ShowMessage('该同学还没安排公寓,请选择其他同学!');
exit;
end;
//////////////////////////////////////
procedure Tgygl_Form.FormCreate(Sender: TObject);
var sqlstr:string;
begin
Query1.SessionName:=Main_Form.Database1.SessionName;
Query1.DatabaseName:=Main_Form.Database1.DatabaseName;
sqlstr:='select *from [xsb] order by 学号';
Query1.SQL.Clear;
Query1.SQL.Add(sqlstr);
Query1.open;
end;
/////////////////////////
procedure Tgygl_Form.FormClose(Sender:TObject;var Action:TCloseAction);
begin
Main_Form.Open_Form_number:=Main_Form.Open_Form_number-1;
if Main_Form.Open_Form_number=0 then
Main_Form.N15.Enabled:=true;
Main_Form.N31.Enabled:=True;
Action:=caFree;
end;
//////////////////////////////////////////////////
procedure Tgygl_Form.BitBtn1Click(Sender: TObject);
var xm,sqlstr:string;
begin
xm:=Trim(xm_LEdit.Text);
if Length(xm)<1 then
begin
sqlstr:=' select a.*,b.专业名称 as 专业名称,c.系别名称 as 系别名称 from [xsb] a ';
sqlstr:=sqlstr+' inner Join [zydm] b on a.专业代码=b.专业代码 ';
sqlstr:=sqlstr+' inner Join [xbdm] c on a.系别代码=c.系别代码 order by a.学号';
end
else
begin
xm:='%'+xm+'%';
sqlstr:='select a.*,b.专业名称 as 专业名称,c.系别名称 as 系别名称 from [xsb] a ';
sqlstr:=sqlstr+' inner Join [zydm] b on a.专业代码=b.专业代码 ';
sqlstr:=sqlstr+' inner Join [xbdm] c on a.系别代码=c.系别代码 ';
sqlstr:=sqlstr+' where(a.姓名 like '''+xm+''')order by a.学号';
end;
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add(sqlstr);
Query1.Open;
if Query1.RecordCount>0 then
begin
N1.Enabled:=true;
N2.Enabled:=true;
end
else
begin
N1.Enabled:=false;
N2.Enabled:=false;
end;
end;
procedure Tgygl_Form.BitBtn2Click(Sender: TObject);
begin
close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -