C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[27928] Re:Re:SynEdit1.1 에 관한 문의입니다.
문정 [csjlim] 771 읽음    2003-11-19 21:24
먼저 감사드립니다. 그렇지 않아도 SynGen 용 msg 파일을 보고 있던 참이었읍니다.
보내주신 예제 문법파일을 잘 읽어보고 열심히 해본다음에 혹 질문이 있으면 다시 올리겠읍니다.
대단히 감사합니다.

민병권 님이 쓰신 글 :
: 질문하신 내용으로 보아 나만의 새로운 Highlighter를 만드실려고 SynHighlighterSample.pas의 소스를 분석 하고 계신것 같습니다.
:
: 하지만, SynEdit에서는 Highlighter를 만드는 쉬운 방법이 따로 있습니다.
: 물론, 문정님처럼 SynHighlighterSample.pas를 분석하여 사용해도 되겠지만 너무 힘들지 않을까 합니다.
:
: ==============================================================
: 새로운 Highlighter를 만드는 방법은 다음과 같습니다.
: ==============================================================
: 1. 먼저, SynEdit1.1\SynGen 폴더에 있는 *.pas소스를 컴파일 하여 실행파일을 하나 만듭니다.
:    만약, 델파이가 설치되어 있으면 'SynGen.dpr'을 사용하면 됩니다.
:    아마, 'SynGen.exe'라는 파일명으로 만들어 질겁니다.
:
: 2. 'SynHighlighterSample.msg' 파일을 수정 또는 새로 만듭니다.
:    이 파일은 일반적인 텍스트 파일로써, Demos\HighlighterDemo 폴더안에 보시면 있습니다.
:
:    이 파일이 실제적으로 Highlighter를 만들기 위한 중요한 파일입니다.
:    이 파일내용은 조금 공부 하셔야 되는데, 같은 폴더내에 'Highlighters-HowTo.rtf'로 제공됩니다.
:
: 3. 'SynHighlighterSample.msg' 파일을 'SynHighlighterSample.pas'로 변환합니다.
:    위의 1번에서 만들었던 'SynGen.exe'를 사용하여 변환을 합니다.
:    사용방법은 간단합니다. 'SynHighlighterSample.msg'파일을 선택하고 메뉴에서 'Start'를 실행합니다.
:    그러면, 'SynHighlighterSample.pas'이 만들어 지는데, 이 파일을 나중에 만드시는 프로그램의 프로젝트
:    에 넣어 주시면 됩니다.
:
: 4. SynEditor->Highlighter = TSynSampleSyn(NULL);
:    이제, 사용해 봅니다.
:
:
: * 첨부파일로 C++ HighLighter를 같이 올리겠습니다.
:   참고하십시요.
:
:
: 문정 님이 쓰신 글 :
: : SynEdit에서 Highlighter 에 관한 질문입니다.
: : SynEdit1.1의 Demos/HighlighterDemo 예제를 빌더화 하고있는 중입니다.
: :
: : SynHighlighterSample.pas 의 내부는 다음과 같습니다. (일부 생략)
: :
: : type
: :   TSynSampleSyn = class(TSynCustomHighlighter)
: :   private
: :     fCommentAttri: TSynHighlighterAttributes;
: :   public
: :     constructor Create(AOwner: TComponent); override;
: :
: : :
: : :
: :
: : constructor TSynSampleSyn.Create(AOwner: TComponent);
: : begin
: :   inherited Create(AOwner);
: :   fCommentAttri := TSynHighLighterAttributes.Create(SYNS_AttrComment);
: :
: :
: : 이를 C++ 화 하려고 다음과 같이 작성하였읍니다.
: :
: : class TSynSampleSyn : public TSynCustomHighlighter
: : {
: :   private:
: :     TSynHighlighterAttributes* fCommentAttri;
: :   public:
: :     __fastcall Create(TComponent AOwner);
: : }
: :
: : __fastcall TSynSampleSyn::Create(TComponent AOwner)
: :   {
: :   fCommentAttri = new TSynHighlighterAttributes;
: :   fCommentAttri->Create(SYNS_AttrComment);
: :
: : 여러가지로 변환해 보았으나 아무래도 델파이에서 C++로의 변환을 위한 의미해석을 잘못한것 같습니다.
: : 어떻게 고쳐야 할지 도움을 부탁드립니다.
: :
: :

+ -

관련 글 리스트
27919 SynEdit1.1 에 관한 문의입니다. 문정 740 2003/11/19
34004     Re:SynEdit1.1 에 관한 문의입니다. 홍환민.행복 735 2003/11/19
27927     Re:SynEdit1.1 에 관한 문의입니다. 민병권 985 2003/11/19
27928         Re:Re:SynEdit1.1 에 관한 문의입니다. 문정 771 2003/11/19
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.