fchangetel.cpp

来自「一套BCB6开发的电话管理系统」· C++ 代码 · 共 112 行

CPP
112
字号
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "FChangeTel.h"
#include "DChangeTel.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFrmChangeTel *FrmChangeTel;
//---------------------------------------------------------------------------
__fastcall TFrmChangeTel::TFrmChangeTel( TIniFile *pMessageIniFile,
        TDMTelSys* pDMTelSys,TComponent* Owner)
        : pMsgIniFile( pMessageIniFile), pDMTelSys( pDMTelSys), TForm(Owner)
{
    ChangeQuery->Open();

    TLocateOptions Options;
    Options.Clear();
    Options << loPartialKey;
    if( pDMTelSys->UserRightQuery->Locate( "FormID", Variant( "FrmChangeTel"), Options)) {
        if( pDMTelSys->UserRightQuery->FieldByName( "Write")->AsString == "No") {
            ModifyToolButton->Enabled = false;
            SaveToolButton->Enabled = false;
            GiveUpToolButton->Enabled = false;
            NewToolButton->Enabled = false;
            DeleteToolButton->Enabled = false;
        }
    }
}
//---------------------------------------------------------------------------
void __fastcall TFrmChangeTel::FormClose(TObject *Sender,
      TCloseAction &Action)
{
    Action = caFree;
    FrmChangeTel = NULL;
}
//---------------------------------------------------------------------------
void __fastcall TFrmChangeTel::NewToolButtonClick(TObject *Sender)
{
    String Phone, Memo;
    DlgChangeTel = new TDlgChangeTel( true, Phone, Memo, this);
    if( DlgChangeTel->ShowModal() == mrOk) {
        ChangeQuery->Append();
        ChangeQuery->FieldByName( "phone")->AsString = Phone;
        ChangeQuery->FieldByName( "memo")->AsString = Memo;
        ChangeQuery->Post();
    }
}
//---------------------------------------------------------------------------
void __fastcall TFrmChangeTel::ModifyToolButtonClick(TObject *Sender)
{
    String Phone = ChangeQuery->FieldByName( "phone")->AsString;
    String Memo = ChangeQuery->FieldByName( "memo")->AsString;
    DlgChangeTel = new TDlgChangeTel( false, Phone, Memo, this);
    if( DlgChangeTel->ShowModal() == mrOk) {
        ChangeQuery->Edit();
        ChangeQuery->FieldByName( "memo")->AsString = Memo;
        ChangeQuery->Post();
    }
}
//---------------------------------------------------------------------------
void __fastcall TFrmChangeTel::DeleteToolButtonClick(TObject *Sender)
{
    ChangeQuery->Delete();
}
//---------------------------------------------------------------------------
void __fastcall TFrmChangeTel::SaveToolButtonClick(TObject *Sender)
{
    try{
        pDMTelSys->TelSysADOConnection->BeginTrans();
        ChangeQuery->UpdateBatch( arAll);
        pDMTelSys->TelSysADOConnection->CommitTrans();
    }
    catch( ...) {
        pDMTelSys->TelSysADOConnection->RollbackTrans();
    }
}
//---------------------------------------------------------------------------
void __fastcall TFrmChangeTel::GiveUpToolButtonClick(TObject *Sender)
{
    ChangeQuery->Close();
    ChangeQuery->Open();
}
//---------------------------------------------------------------------------
void __fastcall TFrmChangeTel::FirstPageToolButtonClick(TObject *Sender)
{
    ChangeQuery->First();
}
//---------------------------------------------------------------------------
void __fastcall TFrmChangeTel::PrevPageToolButtonClick(TObject *Sender)
{
    ChangeQuery->Prior();        
}
//---------------------------------------------------------------------------
void __fastcall TFrmChangeTel::NextPageToolButtonClick(TObject *Sender)
{
    ChangeQuery->Next();        
}
//---------------------------------------------------------------------------
void __fastcall TFrmChangeTel::LastPageToolButtonClick(TObject *Sender)
{
    ChangeQuery->Last();        
}
//---------------------------------------------------------------------------
void __fastcall TFrmChangeTel::ExitToolButtonClick(TObject *Sender)
{
    Close();        
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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