unit1.cpp

来自「《bcb深度历险》 电子书」· C++ 代码 · 共 60 行

CPP
60
字号
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include <registry.hpp>

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;

const char* KEY_REGISTRY = "\\Software\\Jethro\\PosSize";
const char* SEC_SAVEFORM = "SaveForm";

//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
{
  TRegIniFile* r = new TRegIniFile(KEY_REGISTRY);
  try {
    r->WriteInteger(SEC_SAVEFORM, AnsiString(ClassName()) + "_Width", Width);
    r->WriteInteger(SEC_SAVEFORM, AnsiString(ClassName()) + "_Height", Height);

    r->WriteInteger(SEC_SAVEFORM, AnsiString(ClassName()) + "_Top", Top);
    r->WriteInteger(SEC_SAVEFORM, AnsiString(ClassName()) + "_Left", Left);

    r->WriteInteger(SEC_SAVEFORM, AnsiString(ClassName()) + "_WindowState", WindowState);

    r->WriteBool(SEC_SAVEFORM, AnsiString(ClassName()) + "_Visible", Visible);
  } __finally {
    delete r;
  }
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
  TRegIniFile* r = new TRegIniFile(KEY_REGISTRY);
  try {
    Width = r->ReadInteger(SEC_SAVEFORM, AnsiString(ClassName()) + "_Width", Width);
    Height = r->ReadInteger(SEC_SAVEFORM, AnsiString(ClassName()) + "_Height", Height);

    Top = r->ReadInteger(SEC_SAVEFORM, AnsiString(ClassName()) + "_Top", Top);
    Left = r->ReadInteger(SEC_SAVEFORM, AnsiString(ClassName()) + "_Left", Left);

    WindowState = TWindowState(r->ReadInteger(SEC_SAVEFORM, AnsiString(ClassName()) + "_WindowState", WindowState));

    Visible = r->ReadBool(SEC_SAVEFORM, AnsiString(ClassName()) + "_Visible", True);
  } __finally {
    delete r;
  }
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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