📄 archives_class.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Archives_Class.h" //MDIChild档案分类管理窗体头文件
#include "DataModule.h" //数据模块窗体头文件
#include "MonthCalendar.h" //日期选择窗体头文件
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "Inherit"
#pragma resource "*.dfm"
TF_Class *F_Class;
//---------------------------------------------------------------------------
__fastcall TF_Class::TF_Class(TComponent* Owner)
: TF_Inherit(Owner)
{ /*****档案分类管理窗体类构造事件*****/
}
//---------------------------------------------------------------------------
void __fastcall TF_Class::FormCreate(TObject *Sender)
{ /*****档案分类管理窗体创建事件*****/
TTreeNode *root,*node; //定义二个存放节点元件TTreeNode
AnsiString str;
// F_Class->Tag = 1; //设定档案分类管理窗体标记为1
DM->AT_Class->Filtered = false; //关闭档案分类资料信息表过滤器
TV_Class->Items->Clear(); //清空TreeView所有节点
root = new TTreeNode(TV_Class->Items); //声明节点元件指标变量
node = new TTreeNode(TV_Class->Items);
root = TV_Class->Items->AddChild(NULL,"档案分类"); //增加档案分类父节点
root->ImageIndex = 0; //设定档案分类父节点前面图标
root->SelectedIndex = 1; //设定档案分类父节点选中时图标
DM->AT_Class->First(); //设定当前活动记录为第一条记录
for(int i=0;i<DM->AT_Class->RecordCount;i++){ //填写档案分类信息表中所有记录的分类名字段到TreeView
str = DM->AT_ClassClass_Name->Value.TrimRight(); //取得档案分类信息表中分类名字段值,注意这种取字段值方法需要在字段编辑器中添加该字段
node = TV_Class->Items->AddChild(root,str); //增加一个子节点
node->ImageIndex = 2; //设定档案分类子节点前面图标
node->SelectedIndex = 3; //设定档案分类子节点选中时图标
DM->AT_Class->Next(); //当前活动记录下移一条记录
}
root->Expand(true); //展开档案分类父结点
// F_Class->Tag = 1; //设定档案分类管理窗体标记为1
}
//---------------------------------------------------------------------------
void __fastcall TF_Class::DS_State(bool State)
{ /*****用户自定义控制数据感知控件是否可编辑函数*****/
if(State){ //State为true时,数据感知控件不可编辑
DBEdit1->ReadOnly = true; DBEdit2->ReadOnly = true;
DBEdit3->ReadOnly = true; DBEdit4->ReadOnly = true;
DBEdit5->ReadOnly = true; DBEdit6->ReadOnly = true;
DBEdit7->ReadOnly = true; DBEdit8->ReadOnly = true;
SButton1->Enabled = false; SButton2->Enabled = false;
}
else{ //State为false时,数据感知控件可编辑
DBEdit1->ReadOnly = false; DBEdit2->ReadOnly = false;
DBEdit3->ReadOnly = false; DBEdit4->ReadOnly = false;
DBEdit5->ReadOnly = false; DBEdit6->ReadOnly = false;
DBEdit7->ReadOnly = false; DBEdit8->ReadOnly = false;
SButton1->Enabled = true; SButton2->Enabled = true;
}
}
//---------------------------------------------------------------------------
void __fastcall TF_Class::ToolButton1Click(TObject *Sender)
{ /*****增加工具条快捷按钮单击事件*****/
DS_State(false); //数据感知控件可编辑
DM->AT_Count->First(); //移动记录号计数数据表当前活动记录是第一条记录
DM->AT_Count->MoveBy(2); //当前活动记录下移到第三条记录
int Serial = DM->AT_CountCount_Value->Value; //取得档案分类序号值
DM->AT_Class->Append(); //档案分类信息表处于追加记录状态
DM->AT_ClassClass_ID->Value = Serial+1; //显示当前记录序号
}
//---------------------------------------------------------------------------
void __fastcall TF_Class::ToolButton2Click(TObject *Sender)
{ /*****编辑工具条快捷按钮单击事件*****/
DS_State(false); //数据感知控件可编辑
DM->AT_Class->Edit(); //档案分类信息表处于编辑记录状态
}
//---------------------------------------------------------------------------
void __fastcall TF_Class::ToolButton3Click(TObject *Sender)
{ /*****删除工具条快捷按钮单击事件*****/
DM->AT_Class->Delete(); //删除一条档案分类信息表记录
FormCreate(this); //刷新TreeView节点值
}
//---------------------------------------------------------------------------
void __fastcall TF_Class::ToolButton4Click(TObject *Sender)
{ /*****提交工具条快捷按钮单击事件*****/
DS_State(true); //数据感知控件不可编辑
DM->AT_Class->Post(); //提交对档案分类信息表数据集的操作,操作生效
FormCreate(this); //刷新TreeView节点值
DM->AT_Count->First(); //移动记录号计数数据表当前活动记录是第一条记录
DM->AT_Count->MoveBy(2); //当前活动记录下移到第三条记录
DM->AT_Count->Edit(); //记录号计数数据表处于编辑状态
DM->AT_CountCount_Value->Value = DBEdit1->Text.ToInt(); //赋分类号字段为分类序列号值
DM->AT_Count->Post(); //提交分类序列号编辑操作
}
//---------------------------------------------------------------------------
void __fastcall TF_Class::ToolButton6Click(TObject *Sender)
{ /*****取消工具条快捷按钮单击事件*****/
DS_State(true); //数据感知控件不可编辑
DM->AT_Class->Cancel(); //取消对档案分类信息表数据集的操作,回到前一后提交的数据集
}
//---------------------------------------------------------------------------
void __fastcall TF_Class::ToolButton12Click(TObject *Sender)
{ /*****关闭工具条快捷按钮单击事件*****/
F_Class->Close(); //关闭档案分类管理窗口
}
//---------------------------------------------------------------------------
void __fastcall TF_Class::TV_ClassDblClick(TObject *Sender)
{ /*****TreeView控件对象双击事件*****/
if(TV_Class->Selected->Text!="档案分类"){
DM->AT_Class->Filtered = false; //关闭过滤器
DM->AT_Class->Filter = "Class_Name = '"+TV_Class->Selected->Text+"'"; //设置过滤值
DM->AT_Class->Filtered = true; //启动过滤器
}
}
//---------------------------------------------------------------------------
void __fastcall TF_Class::SButton1Click(TObject *Sender)
{ /*****建档日期选择按钮SButton1单击事件*****/
F_Date->Left = F_Class->Left+SButton1->Left; //控件日期选择窗口显示位置
F_Date->Top = F_Class->Top+SButton1->Top;
F_Date->ShowModal(); //弹出日期选择窗口
if(F_Date->ModalResult==mrOk) //用户确定选择的日期
DM->AT_ClassArchives_SDate->Value = F_Date->MC_Date->Date; //选择的日期赋建档日期字段
}
//---------------------------------------------------------------------------
void __fastcall TF_Class::SButton2Click(TObject *Sender)
{ /*****修改日期选择按钮SButton2单击事件*****/
F_Date->Left = F_Class->Left+SButton2->Left; //控件日期选择窗口显示位置
F_Date->Top = F_Class->Top+SButton2->Top;
F_Date->ShowModal(); //弹出日期选择窗口
if(F_Date->ModalResult==mrOk) //用户确定选择的日期
DM->AT_ClassArchives_MDate->Value = F_Date->MC_Date->Date; //选择的日期赋修改日期字段
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -