📄 archives_manage.~cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Archives_Manage.h" //档案管理MDI子窗体头文件
#include "DataModule.h" //数据模块窗体头文件
#include "Archives_Query.h" //数据记录查询窗体头文件
#include "MonthCalendar.h" //日期选择窗体头文件
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "Inherit"
#pragma resource "*.dfm"
TF_Manage *F_Manage;
//---------------------------------------------------------------------------
__fastcall TF_Manage::TF_Manage(TComponent* Owner)
: TF_Inherit(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TF_Manage::FormCreate(TObject *Sender)
{ /*****档案管理窗体创建事件*****/
// DM->DS_Class->Enabled = false; //档案分类资料数据源控件处于非使能态,与提交、取消按钮数据感知控件失去关联关系
TTreeNode *root,*node; //定义二个存放节点元件TTreeNode
AnsiString str;
DM->AT_Class->Filtered = false; //关闭档案分类资料信息表过滤器
DM->AQ_Manage->Filtered = false; //关闭档案管理信息表过滤器
TV_Manage->Items->Clear(); //清空TreeView所有节点
root = new TTreeNode(TV_Manage->Items); //声明节点元件指标变量
node = new TTreeNode(TV_Manage->Items);
root = TV_Manage->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_Manage->Items->AddChild(root,str); //增加一个子节点
node->ImageIndex = 2; //设定档案分类子节点前面图标
node->SelectedIndex = 3; //设定档案分类子节点选中时图标
DM->AT_Class->Next(); //当前活动记录下移一条记录
}
root->Expand(true); //展开档案分类父结点
// TV_Manage->Select(root,Classes::TShiftState())
// root->DisplayRect(true);
int num;
DM->AT_Tank->First(); //设定当前活动记录为第一条记录
for(int i=0;i<DM->AT_Tank->RecordCount;i++){ //填写档案柜资料信息表中所有记录的柜号字段到DBComboBox1
num = DM->AT_TankTank_ID->Value; //取得档案柜资料信息表中柜号字段值
DBComboBox1->Items->Add(IntToStr(num)); //添加一条记录到DBComboBox1
DM->AT_Tank->Next(); //当前活动记录下移一条记录
}
}
//---------------------------------------------------------------------------
void __fastcall TF_Manage::ToolButton1Click(TObject *Sender)
{ /*****增加工具条快捷按钮单击事件*****/
DM->AT_Count->First(); //移动记录号计数数据表当前活动记录是第一条记录
int Serial = DM->AT_CountCount_Value->Value; //取得档案记录序号值
DM->AQ_Manage->Append(); //档案管理信息表处于追加记录状态
DM->AQ_ManageContent_ID->Value = Serial+1; //显示当前记录序号
DM->AQ_ManageContent_Class->Value = TV_Manage->Selected->Text; //填写档案分类名字段
DM->AT_Class->Filtered = false; //关闭过滤器
DM->AT_Class->Filter = "Class_Name = '"+TV_Manage->Selected->Text+"'"; //设置过滤值
DM->AT_Class->Filtered = true; //启动过滤器
DM->AQ_ManageContent_SPerson->Value = DM->AT_ClassArchives_SPerson->Value; //自动填写建档人员字段
DM->AQ_ManageContent_STime->Value = DM->AT_ClassArchives_SDate->Value; //自动填写建档日期字段
DM->AQ_ManageContent_MPerson->Value = DM->AT_ClassArchives_MPerson->Value; //自动填写修改人员字段
DM->AQ_ManageContent_MTime->Value = DM->AT_ClassArchives_MDate->Value; //自动填写修改日期字段
ToolButton1->Enabled = false; //增加按钮非使能
ToolButton2->Enabled = false; //编辑按钮非使能
ToolButton3->Enabled = false; //删除按钮非使能
SButton1->Enabled = true; //日期选择按钮使能
SButton2->Enabled = true;
}
//---------------------------------------------------------------------------
void __fastcall TF_Manage::ToolButton2Click(TObject *Sender)
{ /*****编辑工具条快捷按钮单击事件*****/
DM->AQ_Manage->Edit(); //档案管理信息表处于编辑记录状态
ToolButton1->Enabled = false; //增加按钮非使能
ToolButton2->Enabled = false; //编辑按钮非使能
ToolButton3->Enabled = false; //删除按钮非使能
SButton1->Enabled = true; //日期选择按钮使能
SButton2->Enabled = true;
}
//---------------------------------------------------------------------------
void __fastcall TF_Manage::ToolButton3Click(TObject *Sender)
{ /*****删除工具条快捷按钮单击事件*****/
int Button = MessageBox(NULL,"真的要删除记录吗?","提示对话框",MB_ICONASTERISK); //弹出提示对话框
if(Button == IDOK) //单击OK按钮
DM->AQ_Manage->Delete(); //删除一条档案管理信息表记录
}
//---------------------------------------------------------------------------
void __fastcall TF_Manage::ToolButton4Click(TObject *Sender)
{ /*****提交工具条快捷按钮单击事件*****/
DM->AQ_Manage->Post(); //提交对档案管理信息表数据集的操作,操作生效
DM->AT_Count->First(); //移动记录号计数数据表当前活动记录是第一条记录
DM->AT_Count->Edit(); //记录号计数数据表处于编辑状态
DM->AT_CountCount_Value->Value = DBEdit1->Text.ToInt(); //赋分类号字段为分类序列号值
DM->AT_Count->Post(); //提交分类序列号编辑操作
ToolButton1->Enabled = true; //增加按钮使能
ToolButton2->Enabled = true; //编辑按钮使能
ToolButton3->Enabled = true; //删除按钮使能
SButton1->Enabled = false; //日期选择按钮非使能
SButton2->Enabled = false;
}
//---------------------------------------------------------------------------
void __fastcall TF_Manage::ToolButton6Click(TObject *Sender)
{ /*****取消工具条快捷按钮单击事件*****/
DM->AQ_Manage->Cancel(); //取消对档案管理信息表数据集的操作,回到前一后提交的数据集
ToolButton1->Enabled = true; //增加按钮使能
ToolButton2->Enabled = true; //编辑按钮使能
ToolButton3->Enabled = true; //删除按钮使能
SButton1->Enabled = false; //日期选择按钮非使能
SButton2->Enabled = false;
}
//---------------------------------------------------------------------------
void __fastcall TF_Manage::ToolButton5Click(TObject *Sender)
{ /*****最前条工具条快捷按钮单击事件*****/
DM->AQ_Manage->First(); //移动当前活动记录为第一条记录
}
//---------------------------------------------------------------------------
void __fastcall TF_Manage::ToolButton7Click(TObject *Sender)
{ /*****前一条工具条快捷按钮单击事件*****/
DM->AQ_Manage->Prior(); //当前活动记录前移一条
}
//---------------------------------------------------------------------------
void __fastcall TF_Manage::ToolButton8Click(TObject *Sender)
{ /*****后一条工具条快捷按钮单击事件*****/
DM->AQ_Manage->Next(); //当前活动记录后移一条
}
//---------------------------------------------------------------------------
void __fastcall TF_Manage::ToolButton9Click(TObject *Sender)
{ /*****最后条工具条快捷按钮单击事件*****/
DM->AQ_Manage->Last(); //移动当前活动记录为最后一条记录
}
//---------------------------------------------------------------------------
void __fastcall TF_Manage::ToolButton10Click(TObject *Sender)
{ /*****查找工具条快捷按钮单击事件*****/
DM->AQ_Manage->Filtered = false; //关闭档案管理信息表过滤器
try{
F_Query = new TF_Query(Application); //动态创建数据记录查询窗体
F_Query->ShowModal(); //显示数据记录查询窗口
delete F_Query; //释放F_Query对象
F_Query = NULL; //编程技巧,以免重复释放时抛出异常
}
catch(Exception &exception){
delete F_Query; //释放F_Query对象
Application->ShowException(&exception); //弹出异常对话框
}
}
//---------------------------------------------------------------------------
void __fastcall TF_Manage::ToolButton12Click(TObject *Sender)
{ /*****关闭工具条快捷按钮单击事件*****/
F_Manage->Close(); //关闭档案分类管理窗口
}
//---------------------------------------------------------------------------
void __fastcall TF_Manage::TV_ManageDblClick(TObject *Sender)
{ /*****TreeView控件双击事件*****/
if(TV_Manage->Selected->Text!="档案分类"){
DM->AQ_Manage->Close(); //关闭数据集
DM->AQ_Manage->SQL->Clear(); //清除SQL语句
DM->AQ_Manage->SQL->Add("SELECT * FROM Archives_Content WHERE "); //添加查询语句
DM->AQ_Manage->SQL->Add("Content_Class='"+TV_Manage->Selected->Text+"'"); //添加查询条件语句
DM->AQ_Manage->Open(); //执行SQL语句,打开数据集
// DM->AQ_Manage->Filtered = false; //关闭过滤器
// DM->AQ_Manage->Filter = "Content_Class = '"+TV_Manage->Selected->Text+"'"; //设置过滤值
// DM->AQ_Manage->Filtered = true; //启动过滤器
}
}
//---------------------------------------------------------------------------
void __fastcall TF_Manage::SButton1Click(TObject *Sender)
{ /*****修改日期选择按钮SButton1单击事件*****/
F_Date->Left = F_Manage->Left+SButton1->Left; //控件日期选择窗口显示位置
F_Date->Top = F_Manage->Top+SButton1->Top;
F_Date->ShowModal(); //弹出日期选择窗口
if(F_Date->ModalResult==mrOk) //用户确定选择的日期
DM->AQ_ManageContent_MTime->Value = F_Date->MC_Date->Date; //选择的日期赋建档日期字段
}
//---------------------------------------------------------------------------
void __fastcall TF_Manage::SButton2Click(TObject *Sender)
{ /*****建档日期选择按钮SButton2单击事件*****/
F_Date->Left = F_Manage->Left+SButton2->Left; //控件日期选择窗口显示位置
F_Date->Top = F_Manage->Top+SButton2->Top;
F_Date->ShowModal(); //弹出日期选择窗口
if(F_Date->ModalResult==mrOk) //用户确定选择的日期
DM->AQ_ManageContent_STime->Value = F_Date->MC_Date->Date; //选择的日期赋建档日期字段
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -