📄 ebarmegademomain.cpp
字号:
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonSaveClick(TObject *Sender)
{
SaveFile(false);
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonSaveAsClick(TObject *Sender)
{
SaveFile(true);
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonPrintClick(TObject *Sender)
{
if (PrintDialog->Execute())
Editor->Print(FileName);
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonUndoClick(TObject *Sender)
{
SendMessage(Editor->Handle, EM_UNDO, 0, 0);
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonCutClick(TObject *Sender)
{
Editor->CutToClipboard();
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonCopyClick(TObject *Sender)
{
Editor->CopyToClipboard();
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonPasteClick(TObject *Sender)
{
Editor->PasteFromClipboard();
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonClearClick(TObject *Sender)
{
Editor->ClearSelection();
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonSelectAllClick(TObject *Sender)
{
Editor->SelectAll();
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonFindClick(TObject *Sender)
{
Editor->SelLength = 0;
FindDialog->Execute();
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonReplaceClick(TObject *Sender)
{
Editor->SelLength = 0;
ReplaceDialog->Execute();
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonFontClick(TObject *Sender)
{
FontDialog->Font->Assign(Editor->SelAttributes);
if (FontDialog->Execute())
Editor->SelAttributes->Assign(FontDialog->Font);
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonBulletsClick(TObject *Sender)
{
Editor->Paragraph->Numbering = (TNumberingStyle)dxBarButtonBullets->Down;
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonProtectedClick(TObject *Sender)
{
Editor->SelAttributes->Protected = ! Editor->SelAttributes->Protected;
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarComboFontColorChange(TObject *Sender)
{
if (! FUpdating)
Editor->SelAttributes->Color = dxBarComboFontColor->Color;
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarComboFontColorClick(TObject *Sender)
{
FontDialog->Font->Assign(Editor->SelAttributes);
if (FontDialog->Execute())
Editor->SelAttributes->Assign(FontDialog->Font);
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonURLDetectionClick(TObject *Sender)
{
bool URLDetection;
URLDetection = (bool)(SendMessage(Editor->Handle, EM_GETAUTOURLDETECT, 0, 0));
URLDetection = ! URLDetection;
SendMessage(Editor->Handle, EM_AUTOURLDETECT, (int)(URLDetection), 0);
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonOnWebClick(TObject *Sender)
{
ShellExecute(0, NULL, "http://www.devexpress.com", NULL, NULL, SW_RESTORE);
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarComboFontNameChange(TObject *Sender)
{
if (! FUpdating)
Editor->SelAttributes->Name = dxBarComboFontName->Text;
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarComboFontNameClick(TObject *Sender)
{
FontDialog->Font->Assign(Editor->SelAttributes);
if (FontDialog->Execute())
Editor->SelAttributes->Assign(FontDialog->Font);
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonBoldClick(TObject *Sender)
{
if (dxBarButtonBold->Down)
Editor->SelAttributes->Style = Editor->SelAttributes->Style << fsBold;
else
Editor->SelAttributes->Style = Editor->SelAttributes->Style >> fsBold;
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonItalicClick(TObject *Sender)
{
if (dxBarButtonItalic->Down)
Editor->SelAttributes->Style = Editor->SelAttributes->Style << fsItalic;
else
Editor->SelAttributes->Style = Editor->SelAttributes->Style >> fsItalic;
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonUnderlineClick(TObject *Sender)
{
if (dxBarButtonUnderline->Down)
Editor->SelAttributes->Style = Editor->SelAttributes->Style << fsUnderline;
else
Editor->SelAttributes->Style = Editor->SelAttributes->Style >> fsUnderline;
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonAlignLeftClick(TObject *Sender)
{
if (((TdxBarButton*)Sender)->Down)
Editor->Paragraph->Alignment = (TAlignment)0;
else
Editor->Paragraph->Alignment = taLeftJustify;
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonCenterClick(TObject *Sender)
{
if (((TdxBarButton*)Sender)->Down)
Editor->Paragraph->Alignment = (TAlignment)2;
else
Editor->Paragraph->Alignment = taLeftJustify;
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarButtonAlignRightClick(TObject *Sender)
{
if (((TdxBarButton*)Sender)->Down)
Editor->Paragraph->Alignment = (TAlignment)1;
else
Editor->Paragraph->Alignment = taLeftJustify;
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxAddressComboKeyDown(TObject *Sender,
WORD &Key, TShiftState Shift)
{
if (Key == VK_RETURN) dxAddressCombo->Items->Insert(0, Address);
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxAddressComboDrawItem(
TdxBarCustomCombo *Sender, int AIndex, TRect &ARect,
TOwnerDrawState AState)
{
TRect RectText;
Sender->Canvas->Brush->Color = clWindow;
Sender->Canvas->FillRect(ARect);
RectText = ARect;
RectText.Left += 16;
if (AIndex >= 0) RectText.Right = RectText.Left + Sender->Canvas->TextWidth(Sender->Items->Strings[AIndex]) + 4;
if ( AState.Contains(odSelected) ) {
Sender->Canvas->Brush->Color = clHighlight;
Sender->Canvas->FillRect(RectText);
};
if (AIndex >= 0) {
Sender->Canvas->Draw(ARect.Left + 1, ARect.Top + 2, Image->Picture->Bitmap);
Sender->Canvas->TextOut(RectText.Left + 2, RectText.Top , Sender->Items->Strings[AIndex]);
}
else
if (Sender->Text != "")
{
Sender->Canvas->Draw(ARect.Left + 1, ARect.Top + 2, Image->Picture->Bitmap);
Sender->Canvas->TextOut(RectText.Left + 2, RectText.Top , Sender->Text);
}
if ( AState.Contains(odSelected) )
Sender->Canvas->DrawFocusRect(RectText);
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::FindAddress(void)
{
#if __BORLANDC__ > 0x530 // BCB version > 3
TVariant
#else
VARIANT
#endif
Flags, TargetFrameName, PostData, Headers ;
try {
if (Address != "") {
BSTR S = WideString(Address);
HTML->Navigate(S, &Flags, &TargetFrameName, &PostData, &Headers);
}
}
catch (...) {};
};
void __fastcall TEBarMegaDemoMainForm::dxStopBtnClick(TObject *Sender)
{
if (HistoryIndex != -1) HTML->Stop();
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxRefreshBtnClick(TObject *Sender)
{
if (HistoryIndex != -1) HTML->Refresh();
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxHomeBtnClick(TObject *Sender)
{
Address = "http://www.devexpress.com/";
FindAddress();
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxProductsBtnClick(TObject *Sender)
{
Address = ((TdxBarButton*)Sender)->Hint;
FindAddress();
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxAddressComboChange(TObject *Sender)
{
if (UpdateCombo) {
Address = dxAddressCombo->Text;
FindAddress();
}
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::FormDestroy(TObject *Sender)
{
HTML->Stop();
HistoryList->Free();
HTML->Free();
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBackBtnClick(TObject *Sender)
{
Address = HistoryList->Strings[HistoryIndex - 1];
FindAddress();
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxForwardBtnClick(TObject *Sender)
{
Address = HistoryList->Strings[HistoryIndex + 1];
FindAddress();
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxBarHistoryClick(TObject *Sender)
{
if (((TdxBarButton*)Sender)->ClickItemLink != NULL) {
Address = ((TdxBarButton*)Sender)->ClickItemLink->UserCaption;
FindAddress();
};
}
//---------------------------------------------------------------------------
void __fastcall TEBarMegaDemoMainForm::dxSearchBtnClick(TObject *Sender)
{
HTML->GoSearch();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -