//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//ตัวอย่าง VCL TMemo
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::MenuItemExitClick(TObject *Sender)
{
Close(); //Program End
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Memo1->Text = u""; //Text clear
}
//---------------------------------------------------------------------------
void __fastcall TForm1::MenuItemOpenFileClick(TObject *Sender)
{
TStrings* encodings = new TStringList();
encodings->AddObject("ASCII", TEncoding::ASCII);
encodings->AddObject("UNICODE", TEncoding::Unicode);
encodings->AddObject("UTF8", TEncoding::UTF8);
OpenTextFileDialog1->Encodings->Assign(encodings);
OpenTextFileDialog1->Title = u"Open Text file";
OpenTextFileDialog1->Filter = "Text files (*.txt)|*.TXT|C++ files (*.cpp;*.h;*.cc;*.c)|*.cpp;*.h;*.cc;*.c|Any file (*.*)|*.*";
if(OpenTextFileDialog1->Execute()){
int encIndex = OpenTextFileDialog1->EncodingIndex;
TEncoding* enc = dynamic_cast
(OpenTextFileDialog1->Encodings->Objects[encIndex]);
Memo1->Lines->LoadFromFile(OpenTextFileDialog1->FileName,enc);
}
delete encodings;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::MenuItemSaveFileClick(TObject *Sender)
{
TStrings* encodings = new TStringList();
encodings->AddObject("ASCII", TEncoding::ASCII);
encodings->AddObject("UNICODE", TEncoding::Unicode);
encodings->AddObject("UTF8", TEncoding::UTF8);
SaveTextFileDialog1->Encodings->Assign(encodings);
SaveTextFileDialog1->Title = u"Save Text file";
SaveTextFileDialog1->DefaultExt = u"txt";//デフォルト拡張子
SaveTextFileDialog1->Filter = "Text files (*.txt)|*.TXT|C++ files (*.cpp;*.h;*.cc;*.c)|*.cpp;*.h;*.cc;*.c|Any file (*.*)|*.*";
if(SaveTextFileDialog1->Execute()){
int encIndex = SaveTextFileDialog1->EncodingIndex;
TEncoding* enc = dynamic_cast
(SaveTextFileDialog1->Encodings->Objects[encIndex]);
Memo1->Lines->SaveToFile(SaveTextFileDialog1->FileName,enc);
}
delete encodings;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::MenuItemuFontClick(TObject *Sender)
{
if(FontDialog1->Execute()){
Memo1->Font = FontDialog1->Font;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::MenuItemUndoClick(TObject *Sender)
{
Memo1->Undo();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::MenuItemAboutClick(TObject *Sender)
{
Application->MessageBox(L"C++ Builder 10.1 Berlin example.\nVCL TMemo"
L" Text editor program\nhttp://www.nabeta.tk", L"About", MB_ICONINFORMATION | MB_OK);
}
//---------------------------------------------------------------------------
ソースファイルも用意しています。
プロジェクトファイル、ヘッダファイル、画面設計ファイルを含むコンパイルするための全てのファイルがあります。
実行ファイル(Win32\Debug の中)も入れています。
VCL版のこのソース、実行ファイル
C++ Builder 10.1 Berlin Starter Edition サンプルブログラム example
C言語の話
あーすブラウザ
オンライン鍋田辞書
鍋田辞書トップ