//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "MainEdit.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TMainEditForm *MainEditForm;
//---------------------------------------------------------------------------
__fastcall TMainEditForm::TMainEditForm(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
//新建文件夹程序
void __fastcall TMainEditForm::NewButtonClick(TObject *Sender)
{
if(RichEdit1->Modified == true)//是否可编辑
SaveButtonClick(Sender); //把原来的文件保存
RichEdit1->Lines->Clear();
this->Caption = ExtractFileName("新建文件"); //窗体的Caption为“新建文件夹”
isNamed=false; //isNamed是一个布尔型变量
}
//---------------------------------------------------------------------------
//打开文件夹程序
void __fastcall TMainEditForm::OpenButtonClick(TObject *Sender)
{
if (OpenDialog->Execute())
{
cFileName = OpenDialog->FileName;
Caption = ExtractFileName(cFileName); //窗体的Caption为打开文件夹名
RichEdit1->Lines->LoadFromFile(cFileName);//RichEdit中的内容为打开文件夹的内容
RichEdit1->SelStart = 0;
RichEdit1->Modified = false;
isNamed=true;
}
}
//---------------------------------------------------------------------------
//文件另存为程序
void __fastcall TMainEditForm::SaveAs1Click(TObject *Sender)
{
SaveDialog->FileName = cFileName; //文件名等于以前保存的文件名
if (SaveDialog->Execute() )
{
cFileName= SaveDialog->FileName; //把文件名保存现在的文件名
Caption = ExtractFileName(cFileName);//RichEdit中的内容为打开文件夹的内容
SaveButtonClick(Sender); // 保存现在的文件
isNamed=true;
}
}
//---------------------------------------------------------------------------
//保存文件程序
void __fastcall TMainEditForm::SaveButtonClick(TObject *Sender)
{
if(isNamed)
{
RichEdit1->Lines->SaveToFile(cFileName);
RichEdit1->Modified = false;
}
else
{
SaveAs1Click(Sender); //文件另存为。
}
}
//---------------------------------------------------------------------------
//文件打印程序
void __fastcall TMainEditForm::PrintButtonClick(TObject *Sender)
{
if ( PrintDialog->Execute() )
RichEdit1->Print(cFileName);
}
//---------------------------------------------------------------------------
//撤销操作程序
void __fastcall TMainEditForm::UndoButtonClick(TObject *Sender)
{
RichEdit1->Undo();
}
//---------------------------------------------------------------------------
//剪切操作程序
void __fastcall TMainEditForm::CutButtonClick(TObject *Sender)
{
RichEdit1->CutToClipboard();
}
//---------------------------------------------------------------------------
// 复制操作窗程序
void __fastcall TMainEditForm::CopyButtonClick(TObject *Sender)
{
RichEdit1->CopyToClipboard();
}
//---------------------------------------------------------------------------
// 粘帖操作程序
void __fastcall TMainEditForm::PasteButtonClick(TObject *Sender)
{
RichEdit1->PasteFromClipboard();
}
//---------------------------------------------------------------------------
//删除操作程序
void __fastcall TMainEditForm::Delete1Click(TObject *Sender)
{
RichEdit1->ClearSelection();
}
//---------------------------------------------------------------------------
//全选操作程序
void __fastcall TMainEditForm::SelectAll1Click(TObject *Sender)
{
RichEdit1->SelectAll();
}
//---------------------------------------------------------------------------
// 显示查找对话框程序
void __fastcall TMainEditForm::Find1Click(TObject *Sender)
{ //设置打开对话框的位置
FindDialog1->Position =
Point(RichEdit1->Left + RichEdit1->Width/2,
RichEdit1->Top+RichEdit1->Height/2);
FindDialog1->Execute();
}
//---------------------------------------------------------------------------
// 查找程序
void __fastcall TMainEditForm::FindDialog1Find(TObject *Sender)
{
TFindDialog *dlg=(TFindDialog *)Sender;
int FoundAt, StartPos, ToEnd;
if (RichEdit1->SelLength!=0)
StartPos = RichEdit1->SelStart
+ RichEdit1->SelLength;
else
StartPos = RichEdit1->SelStart;
ToEnd = RichEdit1->Text.Length() - StartPos;
FoundAt = RichEdit1->FindText(dlg->FindText,
StartPos, ToEnd, TSearchTypes()<< stMatchCase);
if (FoundAt != -1)
{
RichEdit1->SetFocus();
RichEdit1->SelStart = FoundAt;
RichEdit1->SelLength = dlg->FindText.Length();
}
else MessageBox(Handle,"没有找到符合条件的字符串!",
"查找",MB_OK|MB_ICONINFORMATION);
dlg->CloseDialog();
}
void __fastcall TMainEditForm::FindNextClick(TObject *Sender)
{
FindDialog1Find(FindDialog1);
}
//---------------------------------------------------------------------------
//显示替换对话框程序
void __fastcall TMainEditForm::Replace1Click(TObject *Sender)
{
ReplaceDialog1->Position =
Point(RichEdit1->Left + RichEdit1->Width/2,
RichEdit1->Top+RichEdit1->Height/2);
ReplaceDialog1->Execute();
}
//---------------------------------------------------------------------------
// 显示何种字体程序
void __fastcall TMainEditForm::FontNameChange(TObject *Sender)
{
RichEdit1->SelAttributes->Name = FontName->Items->Strings[FontName->ItemIndex];
}
//---------------------------------------------------------------------------
//
void __fastcall TMainEditForm::ShowPos()
{
int line =SendMessage(RichEdit1->Handle,
EM_EXLINEFROMCHAR,RichEdit1->SelStart,0);
int lineindex=SendMessage(RichEdit1->Handle,
EM_LINEINDEX,line,0);
StatusBar->Panels->Items[1]->Text="行 "+IntToStr(line+1)
+", 列 "+IntToStr(RichEdit1->SelStart-lineindex+1);
}
//---------------------------------------------------------------------------
//字体加粗程序
void __fastcall TMainEditForm::BoldButtonClick(TObject *Sender)
{
if ( BoldButton->Down )
RichEdit1->SelAttributes->Style =
RichEdit1->SelAttributes->Style << fsBold;//假如BoldButton->Down按钮按下,
//RichEdit1中选中的字体为加粗状态
else
RichEdit1->SelAttributes->Style =
RichEdit1->SelAttributes->Style >> fsBold;
}
//---------------------------------------------------------------------------
//字体倾斜程序
void __fastcall TMainEditForm::ItalicButtonClick(TObject *Sender)
{
if ( ItalicButton->Down )
RichEdit1->SelAttributes->Style=
RichEdit1->SelAttributes->Style << fsItalic;//假如 ItalicButton->Down按钮按下,
//RichEdit1中选中的字体为加粗状态
else
RichEdit1->SelAttributes->Style
= RichEdit1->SelAttributes->Style >> fsItalic;
}
//---------------------------------------------------------------------------
//字体加下划线程序
void __fastcall TMainEditForm::UnderlineButtonClick(TObject *Sender)
{
if ( UnderlineButton->Down )
RichEdit1->SelAttributes->Style
= RichEdit1->SelAttributes->Style << fsUnderline;//假如UnderlineButton按钮按下,
//RichEdit1中选中的字体为加下划线状态
else
RichEdit1->SelAttributes->Style
= RichEdit1->SelAttributes->Style >> fsUnderline;
}
//---------------------------------------------------------------------------
//加标记程序
void __fastcall TMainEditForm::BulletsButtonClick(TObject *Sender)
{
RichEdit1->Paragraph->Numbering = (TNumberingStyle)BulletsButton->Down;
}
//--------------------------------------------------------------------
xzb.rar_C Builder_写字板
版权申诉
134 浏览量
2022-09-20
17:37:57
上传
评论
收藏 366KB RAR 举报
![avatar](https://profile-avatar.csdnimg.cn/dabc422b995e4f93b0df429caef6266e_weixin_42656416.jpg!1)
四散
- 粉丝: 54
- 资源: 1万+
最新资源
- 数据库管理工具:dbeaver-ce-23.3.0-macos-aarch64.dmg
- 数据库管理工具:dbeaver-ce-23.2.5-stable.x86-64.rpm
- 数据库管理工具:dbeaver-ce-23.2.5-macos-x86-64.dmg
- 数据库管理工具:dbeaver-ce-23.2.5-macos-aarch64.dmg
- Kettle上连接HDFS,同步虚拟机上MySQL数据到HDFS
- 数据库管理工具:dbeaver-ce-23.2.4-x86-64-setup.exe
- 数据库管理工具:dbeaver-ce-23.2.4-stable.x86-64.rpm
- 含小数的十进制转N进制源代码.rar
- 数据库管理工具:dbeaver-ce-23.2.4-macos-x86-64.dmg
- python的字符界面程序
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)