📄 ufrmmain.pas
字号:
unit UfrmMain;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, DB, ADODB, UBClass, UPublic, Buttons;
type
TfrmMain = class(TForm)
ADOConnection1: TADOConnection;
pgcTest: TPageControl;
tabStudent: TTabSheet;
cmbChange: TTabSheet;
tabPunish: TTabSheet;
tabReward: TTabSheet;
tabQuery: TTabSheet;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
labSID: TLabel;
txtSName: TEdit;
cmbSSex: TComboBox;
cmbSBD: TDateTimePicker;
txtSNP: TEdit;
cmbSClass: TComboBox;
cmbSD: TComboBox;
cmdAdd: TButton;
cmdF: TButton;
cmdB: TButton;
cmdDel: TButton;
cmdSave: TButton;
cmdCancel: TButton;
Label8: TLabel;
labSID_Change: TLabel;
Label9: TLabel;
Label10: TLabel;
cmbChange_Change: TComboBox;
Label11: TLabel;
cmbTimeChange: TDateTimePicker;
Label12: TLabel;
memChange: TMemo;
labSName_Change: TLabel;
lvwChange: TListView;
Label13: TLabel;
cmdAddChange: TButton;
cmdModiChange: TButton;
cmdDelChange: TButton;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
Label17: TLabel;
Label18: TLabel;
cmbTime_Punish: TDateTimePicker;
memPunish: TMemo;
cmbPunish_Punish: TComboBox;
labSName_Punish: TLabel;
labSID_Punish: TLabel;
cmdAddPunish: TButton;
cmdModiPunish: TButton;
cmdDelPunish: TButton;
lvwPunish: TListView;
Label21: TLabel;
Label22: TLabel;
Label23: TLabel;
Label24: TLabel;
Label25: TLabel;
Label26: TLabel;
cmbTime_Reward: TDateTimePicker;
memReward: TMemo;
cmbReward_Reward: TComboBox;
labSName_Reward: TLabel;
labSID_Reward: TLabel;
cmdAddReward: TButton;
cmdModiReward: TButton;
cmdDelReward: TButton;
lvwReward: TListView;
Label29: TLabel;
Label19: TLabel;
GroupBox1: TGroupBox;
Label20: TLabel;
labName_All: TLabel;
Label28: TLabel;
Label30: TLabel;
Label31: TLabel;
Label32: TLabel;
Label33: TLabel;
labSex_All: TLabel;
labBirthday_All: TLabel;
labSNP_All: TLabel;
labClass_All: TLabel;
labDept_All: TLabel;
txtID_All: TEdit;
spbQuery: TSpeedButton;
GroupBox2: TGroupBox;
lvwChange_All: TListView;
GroupBox3: TGroupBox;
lvwReward_All: TListView;
GroupBox4: TGroupBox;
lvwPunish_All: TListView;
cmdP_All: TButton;
cmdD_All: TButton;
cbxEnable: TCheckBox;
cmdAdd_All: TButton;
cmdDel_All: TButton;
cmdModi_All: TButton;
procedure FormCreate(Sender: TObject);
procedure cmdAddClick(Sender: TObject);
procedure cmdFClick(Sender: TObject);
procedure cmdBClick(Sender: TObject);
procedure cmdDelClick(Sender: TObject);
procedure cmdSaveClick(Sender: TObject);
procedure cmdCancelClick(Sender: TObject);
procedure pgcTestChange(Sender: TObject);
procedure cmdAddChangeClick(Sender: TObject);
procedure cmdModiChangeClick(Sender: TObject);
procedure cmdDelChangeClick(Sender: TObject);
procedure cmdAddPunishClick(Sender: TObject);
procedure cmdModiPunishClick(Sender: TObject);
procedure cmdDelPunishClick(Sender: TObject);
procedure cmdAddRewardClick(Sender: TObject);
procedure cmdModiRewardClick(Sender: TObject);
procedure cmdDelRewardClick(Sender: TObject);
procedure lvwRewardClick(Sender: TObject);
procedure spbQueryClick(Sender: TObject);
procedure cmdP_AllClick(Sender: TObject);
procedure cmdD_AllClick(Sender: TObject);
procedure cmdAdd_AllClick(Sender: TObject);
procedure lvwChange_AllEnter(Sender: TObject);
procedure lvwReward_AllEnter(Sender: TObject);
procedure lvwPunish_AllEnter(Sender: TObject);
procedure cmdModi_AllClick(Sender: TObject);
procedure lvwChangeSelectItem(Sender: TObject; Item: TListItem;
Selected: Boolean);
procedure lvwPunishSelectItem(Sender: TObject; Item: TListItem;
Selected: Boolean);
procedure lvwRewardSelectItem(Sender: TObject; Item: TListItem;
Selected: Boolean);
procedure cmdDel_AllClick(Sender: TObject);
private
_Student: TStudent;
_isNew: Boolean;
_CurSel: string;
procedure SetValue;
procedure SetChangeValue;
procedure SetPunishValue;
procedure SetRewardValue;
procedure SetAllValue;
{ Private declarations }
public
{ Public declarations }
end;
var
frmMain: TfrmMain;
implementation
{$R *.dfm}
procedure TfrmMain.FormCreate(Sender: TObject);
begin
adoconnection1.close;
adoconnection1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='
+ ExtractFilePath(Application.ExeName) + '\db1.mdb;Persist Security Info=False';
_Student := TStudent.Create(ADOConnection1);
SetValue;
_isNew := false;
_CurSel := '';
end;
procedure TfrmMain.SetValue;
begin
labSID.Caption := _Student.ID;
txtSName.Text := _Student.Name;
cmbSSex.Text := _Student.Sex;
cmbSBD.Date := _Student.BDate;
txtSNP.Text := _Student.NP;
_Student.GetClassList(cmbSClass);
cmbSClass.Text := _Student.ClassID;
_Student.GetDeptList(cmbSD);
cmbSD.Text := _Student.Dept;
end;
procedure TfrmMain.cmdAddClick(Sender: TObject);
begin
_Student.setValue(false);
_isNew := true;
_Student.ID := _Student.GetNewSID;
SetValue;
cmdAdd.Enabled := false;
cmdF.Enabled := false;
cmdB.Enabled := false;
cmdDel.Enabled := false;
end;
procedure TfrmMain.cmdFClick(Sender: TObject);
begin
_Student.MovePrior;
SetValue;
end;
procedure TfrmMain.cmdBClick(Sender: TObject);
begin
_Student.MoveNext;
SetValue;
end;
procedure TfrmMain.cmdDelClick(Sender: TObject);
begin
if MessageDlg('是否真的删除?', mtConfirmation,
[mbYes, mbNo], 0) = mrYes then
_Student.Delete;
SetValue;
end;
procedure TfrmMain.cmdSaveClick(Sender: TObject);
begin
_Student.ID := labSID.Caption;
_Student.Name := txtSName.Text;
_Student.Sex := cmbSSex.Text;
_Student.BDate := int(cmbSBD.DateTime);
_Student.NP := txtSNP.Text;
_Student.ClassID := cmbSClass.Text;
_Student.Dept := cmbSD.Text;
if _isNew then
_Student.AddNew
else
_Student.Update;
_isNew := false;
cmdF.Enabled := true;
cmdB.Enabled := true;
cmdDel.Enabled := true;
cmdAdd.Enabled := true;
end;
procedure TfrmMain.cmdCancelClick(Sender: TObject);
begin
cmdF.Enabled := true;
cmdB.Enabled := true;
cmdDel.Enabled := true;
cmdAdd.Enabled := true;
_isNew := false;
end;
procedure TfrmMain.pgcTestChange(Sender: TObject);
begin
case pgcTest.TabIndex of
0:
begin
SetValue;
end;
1:
begin
labSID_Change.Caption := _Student.ID;
labSName_Change.Caption := _Student.Name;
_Student.GetChangeList(cmbChange_Change);
_Student.GetHistoryChange(lvwChange);
cmbChange_Change.Text := '';
memChange.Text := '';
cmbTimeChange.DateTime := now;
lvwChange.ShowColumnHeaders := false;
lvwChange.ShowColumnHeaders := true;
end;
2:
begin
labSID_Punish.Caption := _Student.ID;
labSName_Punish.Caption := _Student.Name;
_Student.GetPunishList(cmbPunish_Punish);
_Student.GetHistoryPunish(lvwPunish);
cmbPunish_Punish.Text := '';
memPunish.Text := '';
cmbTime_Punish.DateTime := now;
cbxEnable.Checked := false;
lvwPunish.ShowColumnHeaders := false;
lvwPunish.ShowColumnHeaders := true;
end;
3:
begin
labSID_Reward.Caption := _Student.ID;
labSName_Reward.Caption := _Student.Name;
_Student.GetRewardList(cmbReward_Reward);
_Student.GetHistoryReward(lvwReward);
cmbReward_Reward.Text := '';
memReward.Text := '';
cmbTime_Reward.DateTime := now;
lvwReward.ShowColumnHeaders := false;
lvwReward.ShowColumnHeaders := true;
end;
4:
begin
SetAllValue;
lvwChange_All.ShowColumnHeaders := false;
lvwChange_All.ShowColumnHeaders := true;
lvwPunish_All.ShowColumnHeaders := false;
lvwPunish_All.ShowColumnHeaders := true;
lvwReward_All.ShowColumnHeaders := false;
lvwReward_All.ShowColumnHeaders := true;
end;
end;
_CurSel := '';
end;
procedure TfrmMain.cmdAddChangeClick(Sender: TObject);
begin
_Student.AddChange(cmbChange_Change.Text,
cmbTimeChange.DateTime, memChange.Text);
labSID_Change.Caption := _Student.ID;
labSName_Change.Caption := _Student.Name;
_Student.GetChangeList(cmbChange_Change);
_Student.GetHistoryChange(lvwChange);
cmbChange_Change.Text := '';
memChange.Text := '';
cmbTimeChange.DateTime := now;
end;
procedure TfrmMain.cmdModiChangeClick(Sender: TObject);
var
CCID: string;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -