.


:




:

































 

 

 

 


Catch (.)




{ FUpdating = false; } // ( ) FUpdating = false;

}

// TTextAttributes *_ fastcall TMainForm::CurrText(void) { return RichEditl->SelAttributes;

}

// int EnumFontsProc(TLogFontA &LogFont, TTextMetricA &, int,

Pointer Data) { ((TStrings *)Data)->Add((AnsiString)LogFont.IfFaceName);

return 1;

}

// void _fastcall TMainForm::GetFontNames (void) { HDC hDC = GetDC(O);

void * cTmp = (void *)FontName->Items;

EnumFonts(hDC, NULL, (FONTENUMPROC) EnumFontsProc, (long) cTmp);

ReleaseDC(0,hDC);

FontName->Sorted = true;

}

// void _fastcall TMainForm::SetFileName(const AnsiString

FileName) (LPSTR IpBuf = new char[MAX_pATH];

sprintf(IpBuf, "%s-%s", ExtractFileName(FileName).c_str(), Application->Title.c_str());

Caption = (AnsiString)IpBuf;

FFileName = FileName;

delete IpBuf;

}

// " ?" void _fastcall TMainForm::CheckFileSave(void) { if (RichEditl->Modified) {

switch(M&ssageBox(Handle, "Save Changes?", "Confimation",

MB_YESNOCANCEL I MB_ICONQUESTION)) { case ID_YES: FileSaveClick(this);

case ID_CANCEL: Abort();

};

) }

// void _fastcall TMainPorm::SetupRuler(void) { int iCtr = 1;

char sTmp[201];

while (iCtr < 200) (

sTmp[iCtr++] = 9; // sTmp[iCtr++] = 'I'; // } Ruler->Caption = (AnsiString)sTmp;

}

// Windows void _fastcall TMainForm::SetEditRect (void) (TRect Ret = Rect(GutterWid, 0,

RichEditl->ClientWidth-GutterWid, ClientHeight);

SendMessage(RichEditl->Handle, EM_SETRECT, 0, long(&Rct));

}

// void _fastcall TMainForm::FormCreate(TObject* /*Sender*/) { Application->OnHint = &ShowHint;

OpenDialog->InitialDir = ExtractFilePath(ParamStr(0));

SaveDialog->InitialDir = OpenDialog->InitialDir;

GetFontNames();

SetupRuler();

SelectionChange(this); //

}

// void_fastcall TMainForm::ShowHint(TObject* /*Sender*/) { StatusBar->SimpleText = Application->Hint;

}

// File I New void_fastcall TMainForm::FileNewClick(TObject* /*Sender*/) { CheckFileSavef); // ? SetFileName((AnsiString)"Untitled");

RichEditl->Lines->Clear();

RichEditl->Modified = false;

}

// File I Open void _fastcall TMainForm::FileOpenClick(TObject*) { CheckFileSave(); // ? if (OpenDialog->Execute()) {

RichEditl->Lines->LoadFromFile(OpenDialog->FileName);

SetFileName(OpenDialog->FileName);

RichEditl->SetFocus();

RichEditl->Modified = false;

RichEditl->ReadOnly =

OpenDialog->Options.Contains(ofReadOnly);

} }

// File I Save void?*_fastcall TMainForm::FileSaveClick(TObject* Sender) { if (!strcmp(FFileName.c_str(), "Untitled"))

FileSaveAsClick(Sender); // else

{ RichEditl->Lines->SaveToFile(FFileName); // RichEditl->Modified = false;

})

// FilelSaveAs void _fastcall TMainForm::FileSaveAsClick(TObject*) { if (SaveDialog->Execute()) {

RichEditl->Lines->SaveToFile(SaveDialog->FileName);

SetFileName(SaveDialog->FileName);

RichEditl->Modified = false;

} }

// File I Print void _fastcall TMainForm::FilePrintClick(TObject*) { if (PrintDialog->Execute()) RichEditl->Print(FFileName);

}

// File I Exit void _fastcall TMainForm::FileExitClick(TObject*) { Close();

}

// Edit I Undo void _fastcall TMainForm::EditUndoClick(TObject*) (if (RichEditl->HandleAllocated())

SendMessage(RichEditl->Handle, EM_UNDO, 0, 0);

}

// Edit I Cut void _fastcall TMainForm::EditCutClick(TObject*) { RichEditl->CutToClipboard();

}

// Edit I Copy void _fastcall TMainForm::EditCopyClick(TObject*) { RichEditl->CopyToClipboard();

}

// Edit I Paste void _fastcall TMainForm::EditPasteClick(TObject*) { RichEditl->PasteFromClipboard();

}

// Help I Contents void _fastcall TMainForm::HelpContentsClick(TObject*) { Application->HelpCommand(HELP_CONTENTS, 0);

}

// Help I Search...

void _fastcall TMainForm::HelpSearchClick(TObject*)

{ Application->HelpCommand(HELP_PARTIALKEY, (long) "");

)

// Help I to... void _fastcall TMainForm::HelpHowToClick(TObject*) { Application->HelpCommand(HELP_HELPONHELP, 0);

}

// Help I About

void_fastcall TMainForm::HelpAboutClick(TObject*)

{ Porm2 = new TPorm2(Application); //

Form2->ShowModal(); //

delete Porm2; // }

// Edit I font void _fastcall TMainPorm::SelectFont(TObject*) { FontDialogl->Font->Assign(RichEditl->SelAttributes);

if (FontDialogl->Execute())

CurrText()->Assign(FontDialogl->Font);

RichEditl->SetFocus();

}

// void _fastcall TMainForm::RulerResize(TObject*) { RulerLine->Width =

(int)Ruler->ClientWidth-(RulerLine->Left*2);

}

//

void _fastcall TMainForm::FormResize(TObject* Sender)

{ SetEditRect(); // Windows

SelectionChange(Sender); //

)

//

void _fastcall TMainForm::FormPaint(TObject* Sender) { SetEditRect(); // Windows

}

// " " void _fastcall TMainForm::BoldButtonClick(TObject*) { if (iFUpdating)

{ if (BoldButton->Down) // CurrText()->Style = CurrText()->Style fsBold;

else // CurrText()->Style = CurrText()->Style fsBold;

} }

// " " void _fastcall TMainForm::ItalicButtonClick(TObject*) { if (iFUpdating)

{ if (ItalicButton->Down) // CurrText()->Style = CurrText()->Style fsltalic;

else // CurrText()->Style = CurrText()->Style fsltalic;

} }

// " " void _fastcall TMainForm::UnderlineButtonClick(TObject*) { if (iFUpdating)

{ if (UnderlineButton->Down) //

CurrText()->Style = CurrText()->Style fsUnderline;

else // CurrText()->Style = CurrText()->Style fsUnderline;

) }

// void _fastcall TMainForm::FontSizeChange(TObject*) {

int fontsize = atoi(FontSize->Text.c_str());

if ((iFUpdating) && (fontsize)) { if (fontsize < 1)

{ ShowMessage("Number must be between 1 and 1638.");

FontSize->Text =1; } else if (fontsize > 1638)

{ ShowMessage("Number must be between 1 and 1638");

FontSize->Text = 1638; } CurrText()->Size = atoi(FontSize->Text.c_str());

} }

// void _fastcall TMainForm::AlignClick(TObject* Sender) { if (IFUpdating)

{ TControl *oAliBtn = (TControl*)(Sender);

RichEditl->Paragraph->Alignment = (TAlignment)oAliBtn->Tag;

} }

// void _fastcall TMainForm::FontNameChange(TObject*) { if (iFUpdating)

{ CurrText()->Name =

FontName->Items->Strings[FontName->ItemIndex];

} }

// " " void _fastcall TMainForm::BulletsButtonClick(TObject*) { if (iFUpdating)

RichEditl->Paragraph->Numbering =

(TNumberingStyle)BulletsButton->Down;

}

// void _fastcall TMainForm::FormCloseQuery(TObject*, bool & CanClose)

{ try

{ CheckFileSaveO; } // ? catch (...)

{ CanClose = false; } // ( ) }

// , void_fastcall TMainForm::RulerItemMouseDown(TObject* Sender,

TMouseButton Button, TShiftState Shift, int X, int Y) { TLabel * oTmpLabel = (TLabel *)Sender;

FDragOfs = oTmpLabel->Width / 2;

oTmpLabel->Left = oTmpLabel->Left+X-FDragOfs;

FDragging = true;

}

// void _fastcall TMainForm:':RulerItemMouseMove(TObject* Sender,

TShiftState Shift, int X, int /*Y*/) (if (FDragging)

{ TLabel * oTmpLabel = (TLabel *)Sender;

oTmpLabel->Left = oTmpLabel->Left+X-FDragOfs;

) }

// void_fastcall TMainForm::FirstIndMouseUp(TObject* Sender,

TMouseButton Button, TShiftState Shift, int X, int Y) { FDragging = false;

RichEditl->Paragraph->FirstIndent =

int((FirstInd->Left+FDragOfs-GutterWid) / RulerAdj);

LeftIndMouseUp(Sender, Button, Shift, X, Y);

}

// void _fastcall TMainForm::LeftIndMouseUp(TObject* Sender,

TMouseButton, TShiftState, int, int) { FDragging = false;

RichEditl->Paragraph->LeftIndent =

int ((LeftInd->Left+FDragOfs-GutterWid) / RulerAdj)-RichEditl->Paragraph->FirstIndent;

SelectionChange(Sender); //

}

//

void_fastcall TMainForm::RightIndMouseUp(TObject* Sender,

TMouseButton, TShiftState, int, int) { FDragging = false;

RichEditl->Paragraph->RightIndent =

int( (Ruler->ClientWidth-Rightlnd->Left+FDragOfs-2) / RulerAdj)-2*GutterWid;

SelectionChange(Sender); // }

// void _fastcall TMainForm::FormActivate(TObject* /*Sender*/) { Application->HelpFile = "RICHEDIT.HLP";

RichEditl->SetFocus();

4.1. Romain.cpp .

. 4.22 . , , FFileName. , :

=> , , F5 ( ). . . => Run [ Run ( F9), Run | Run to Cursor (

F4) .

=> ( ), , " ^ ".

; => Run | Step Over ( F8) -; .


=> FFileName -| Inspect ( Alt+F5) ti4' - "Untitled".

 

. 4.22. .

=> ( F9) File | Open .

=> . => -

. =>

Run | Program Reset.

4.6.8

System


12 .

TTimer

Windows API: SetTimer KillTimer WM_TIMER.

Interval OnTimer. Interval=1000 ( ). SetTimer .

.





:


: 2015-10-01; !; : 343 |


:

:

, .
==> ...

1520 - | 1345 -


© 2015-2024 lektsii.org - -

: 0.04 .