Unit1.cpp
上传用户:daoqigc
上传日期:2021-04-20
资源大小:2795k
文件大小:2k
源码类别:

RichEdit

开发平台:

Delphi

  1. /*=============================================================================}
  2. { This demo shows how to use Tags of items.                                    }
  3. { Each item has associated integer value - Tag. Tags are used to store         }
  4. { additional information, which RichView does not display and does not use.    }
  5. {------------------------------------------------------------------------------}
  6. { All Add*** methods (except from obsolete ones) has Add***Tag version.        }
  7. { Add***(...) == Add***Tag(...,0) (Tags=0 by default)                          }
  8. { For example, look AddNLTag and AddHotpotExTag in this demo.                  }
  9. { Tag of item can be obtained with GetItemTag method (or Get***Info methods)   }
  10. { and modified with SetItemTag (or Set***Info methods).                        }
  11. {=============================================================================*/
  12. #include <vclvcl.h>
  13. #pragma hdrstop
  14. #include "Unit1.h"
  15. //---------------------------------------------------------------------------
  16. #pragma link "RichView"
  17. #pragma link "RVScroll"
  18. #pragma link "RVStyle"
  19. #pragma resource "*.dfm"
  20. TForm1 *Form1;
  21. //---------------------------------------------------------------------------
  22. __fastcall TForm1::TForm1(TComponent* Owner)
  23.     : TForm(Owner)
  24. {
  25. }
  26. //---------------------------------------------------------------------------
  27. void __fastcall TForm1::FormCreate(TObject *Sender)
  28. {
  29.   RichView1->AddNL("Some text styles can be chosen as hypertext styles. ",0,0);
  30.   RichView1->AddNLTag("Like this one.",4,-1, 100);
  31.   RichView1->AddNL(" You can have as many hypertext styles as you want.  ",0,-1);
  32.   RichView1->AddNLTag("Here is one more.",5,-1,  200);
  33.   RichView1->AddNL("Images from Image Lists also can be hypertext: ",0,0);
  34.   RichView1->AddHotspotExTag("Pen Image", 0,1, ImageList1, -1, 300);
  35.   RichView1->AddNL(" Such images are called 'hotspots'.",0,-1);
  36.   TIcon* ico = new TIcon;
  37.   ico->Assign(Image1->Picture->Graphic);
  38.   RichView1->AddHotPictureTag("Bobo", ico, -1, rvvaBaseline, 400);
  39.   RichView1->Format();
  40. }
  41. //---------------------------------------------------------------------------
  42. void __fastcall TForm1::RichView1Jump(TObject *Sender, int id)
  43. {
  44.   int ItemNo = RichView1->GetJumpPointItemNo(id);
  45.   int Tag    = RichView1->GetItemTag(ItemNo);
  46.   Panel1->Caption = AnsiString("Clicked: Item with Tag=")+IntToStr(Tag);
  47. }
  48. //---------------------------------------------------------------------------