⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 u_sjscfawh.~pas

📁 试卷管理系统
💻 ~PAS
字号:
unit U_sjscfawh;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls,Grids, DBGrids, Buttons, ComCtrls, DB, DBTables;

type
  Tfrm_sjscfawh = class(TForm)
    btn_fanr: TBitBtn;
    DBGrid1: TDBGrid;
    GroupBox1: TGroupBox;
    Label3: TLabel;
    DateTimePicker1: TDateTimePicker;
    Label2: TLabel;
    edit_zdr: TEdit;
    Label1: TLabel;
    edit_faname: TEdit;
    Table1: TTable;
    GroupBox2: TGroupBox;
    DataSource1: TDataSource;
    btn_insert: TButton;
    btn_delete: TButton;
    btn_edit: TButton;
    btn_confirm: TButton;
    btn_cancel: TButton;
    Query1: TQuery;
    BitBtn1: TBitBtn;
    procedure Table1AfterScroll(DataSet: TDataSet);
    procedure btn_insertClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure btn_confirmClick(Sender: TObject);
    procedure btn_editClick(Sender: TObject);
    procedure btn_deleteClick(Sender: TObject);
    procedure btn_cancelClick(Sender: TObject);
    procedure staterefresh();
    procedure btn_fanrClick(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frm_sjscfawh: Tfrm_sjscfawh;

implementation
uses U_sjscfanrwh;
{$R *.dfm}

procedure Tfrm_sjscfawh.Table1AfterScroll(DataSet: TDataSet);
begin
  edit_faname.Text:=table1.fieldbyname('faname').AsString;
  edit_zdr.Text:=table1.fieldbyname('zdr').AsString;
  DateTimePicker1.DateTime:=table1.fieldbyname('date').AsDateTime;
end;

procedure Tfrm_sjscfawh.btn_insertClick(Sender: TObject);
begin
  table1.Append;

  btn_confirm.Enabled:=true;
  btn_cancel.Enabled:=true;
  btn_edit.Enabled:=false;

  edit_faname.Text:='';
  edit_zdr.Text:='';
  DateTimePicker1.DateTime:=now;

  edit_faname.SetFocus;
end;

procedure Tfrm_sjscfawh.FormCreate(Sender: TObject);
begin
  table1.Open;
  if table1.RecordCount=0 then
  begin
    btn_insert.Enabled:=true;
    btn_delete.Enabled:=false;
    btn_edit.Enabled:=false;
    btn_confirm.Enabled:=false;
    btn_cancel.Enabled:=false;
    btn_fanr.Enabled:=false;

    edit_faname.Text:='';
    edit_zdr.Text:='';
    DateTimePicker1.DateTime:=now;
   end
   else
   begin
      btn_confirm.Enabled:=false;
      btn_cancel.Enabled:=false;
   end;
end;

procedure Tfrm_sjscfawh.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  table1.Close;
end;

procedure Tfrm_sjscfawh.btn_confirmClick(Sender: TObject);
begin
  if edit_faname.Text='' then
  begin
    MessageBox(Handle,'方案名称不能为空!','试卷生成方案维护',MB_OK+MB_ICONSTOP);
    table1.Cancel;
    edit_faname.SetFocus;
    exit;
  end;

  if  table1.State=dsEdit	then
  begin
    Query1.Close;
    Query1.SQL.Text:='update sjscfanr set faname=:faname2 where faname=:faname1';
    Query1.ParamByName('faname1').AsString:=table1.FieldByName('faname').AsString;
    Query1.ParamByName('faname2').AsString:=trim(edit_faname.Text);
    Query1.ExecSQL;
  end;

  table1.FieldByName('faname').AsString:=edit_faname.Text;
  table1.FieldByName('zdr').AsString:=edit_zdr.Text;
  table1.FieldByName('date').AsDateTime:=DateTimePicker1.DateTime;


  try
    table1.Post;
  except
    MessageBox(Handle,'方案名称重名!','试卷生成方案维护',MB_OK+MB_ICONSTOP);
    edit_faname.SetFocus;
    exit;
  end;
  staterefresh;
end;

procedure Tfrm_sjscfawh.btn_editClick(Sender: TObject);
begin
  table1.Edit;
  btn_confirm.Enabled:=true;
  btn_cancel.Enabled:=true;
  edit_faname.SetFocus;
end;

procedure Tfrm_sjscfawh.btn_deleteClick(Sender: TObject);
begin
  if MessageBox(Handle,'确实要删除此方案吗?','试卷生成方案维护',MB_YESNO+MB_ICONQUESTION+MB_DEFBUTTON2)=IDYES  then
  begin
    Query1.Close;
    Query1.SQL.Text:='delete from sjscfanr where faname=:faname';
    Query1.ParamByName('faname').AsString:=table1.FieldByName('faname').AsString;
    Query1.ExecSQL;
    
    table1.Delete;
  end;
  staterefresh;
end;

procedure Tfrm_sjscfawh.btn_cancelClick(Sender: TObject);
begin
  table1.Cancel;
  staterefresh;
end;

procedure Tfrm_sjscfawh.staterefresh;
begin
  if table1.RecordCount=0 then
  begin
    btn_insert.Enabled:=true;
    btn_delete.Enabled:=false;
    btn_edit.Enabled:=false;
    btn_confirm.Enabled:=false;
    btn_cancel.Enabled:=false;
    btn_fanr.Enabled:=false;

    edit_faname.Text:='';
    edit_zdr.Text:='';
    DateTimePicker1.DateTime:=now;

    exit;
  end;
  btn_insert.Enabled:=true;
  btn_delete.Enabled:=true;
  btn_edit.Enabled:=true;
  btn_confirm.Enabled:=false;
  btn_cancel.Enabled:=false;
  btn_fanr.Enabled:=true;

end;

procedure Tfrm_sjscfawh.btn_fanrClick(Sender: TObject);
var
  form:Tfrm_sjscfanrwh;
begin
  form:=Tfrm_sjscfanrwh.Create(self);
  form.faname:=table1.FieldByName('faname').AsString;
  form.Caption:=table1.FieldByName('faname').AsString+'内容';
  form.Table1.Filter:='faname='+ QuotedStr(table1.FieldByName('faname').AsString);
  form.Table2.Filter:='faname='+ QuotedStr(table1.FieldByName('faname').AsString);
  form.ShowModal;
  form.Free;
end;

procedure Tfrm_sjscfawh.BitBtn1Click(Sender: TObject);
begin
  close;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -