mainunit.cpp

来自「C++Builder高级应用开发指南随书源码」· C++ 代码 · 共 78 行

CPP
78
字号
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "MainUnit.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::miVerbClick(TObject *Sender)
{
    int Count = miVerb->Count;
    for(int i=0;i<Count-3;i++)
    {
        delete miVerb->Items[0];
    }

    OleContainer1->UpdateVerbs();
    Count = OleContainer1->ObjectVerbs->Count;
    for(int i=0;i<Count;i++)
    {
        TMenuItem * mi = new TMenuItem(Application);
        mi->Caption = OleContainer1->ObjectVerbs->Strings[i];
        mi->Tag = i;
        mi->OnClick = miDoVerbClick;
        miVerb->Insert(0,mi);
    }    
}
//---------------------------------------------------------------------------
void __fastcall TForm1::miExitClick(TObject *Sender)
{
    Application ->Terminate();
}
//---------------------------------------------------------------------------

void __fastcall TForm1::miDoVerbClick(TObject *Sender)
{
    TMenuItem * mi = dynamic_cast<TMenuItem *>(Sender);
    if(mi!=NULL)
    {
        OleContainer1->DoVerb(mi->Tag);
    }
}
//---------------------------------------------------------------------------

void __fastcall TForm1::FormCloseQuery(TObject *Sender, bool &CanClose)
{
    OleContainer1->DestroyObject();
    CanClose = true;    
}
//---------------------------------------------------------------------------

void __fastcall TForm1::miCloseClick(TObject *Sender)
{
    OleContainer1->Close();    
}
//---------------------------------------------------------------------------

void __fastcall TForm1::InsertObject1Click(TObject *Sender)
{
    OleContainer1->InsertObjectDialog();
}
//---------------------------------------------------------------------------

void __fastcall TForm1::CopySpecial1Click(TObject *Sender)
{
    OleContainer1->PasteSpecialDialog();
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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