|
고맙습니다. 친절하시게도 직접 component까지 만들어 주시고.
상속을 사용해서 새 component를 만들 수도 있군요. 처음 알았습니다.
다시 한번 감사드립니다.
유영인 [Chris] 님이 쓰신 글 :
: RichEdit를 상속받아 새 컴포넌트를 만드는 방법이 가장 좋을것 같네요.
:
: 아래와 같이 헤더 파일을 수정함으로서, DB Click 이벤트를 만드실 수 있습니다.
:
:
: //---------------------------------------------------------------------------
:
: #ifndef NewRichEditH
: #define NewRichEditH
: //---------------------------------------------------------------------------
: #include <SysUtils.hpp>
: #include <Controls.hpp>
: #include <Classes.hpp>
: #include <Forms.hpp>
: #include <ComCtrls.hpp>
: #include <StdCtrls.hpp>
: //---------------------------------------------------------------------------
: class PACKAGE TNewRichEdit : public TRichEdit
: {
: private:
: TNotifyEvent FOnMouseDbClick;
:
: BEGIN_MESSAGE_MAP
: MESSAGE_HANDLER(WM_LBUTTONDBLCLK, TMessage, CMMouseDBClickEvent)
: END_MESSAGE_MAP(TControl)
:
: void __fastcall CMMouseDBClickEvent(TMessage &Message) {
: DoMouseDBClickEvent();
: }
:
: virtual void __fastcall DoMouseDBClickEvent() {
: if(FOnMouseDbClick) FOnMouseDbClick(this);
: }
: protected:
: public:
: __fastcall TNewRichEdit(TComponent* Owner);
: __published:
: __property TNotifyEvent OnDblClick = {read=FOnMouseDbClick, write=FOnMouseDbClick};
: };
: //---------------------------------------------------------------------------
: #endif
:
:
: 혹시 몰라서, DBClick을 추가시킨 컴포넌트도 올려드립니다. 아래 작업을 하시면 됩니다.
:
: 1. 압축을 적당한 곳에 푼다
: 2. BCB에서 [Component] - [Install Component] 를 선택
: 3. NewRichEdit.cpp 를 선택
: 4. Install 버튼 클릭
:
: 이렇게 하시면 Sample 탭에 NewRichEdit 컴포넌트가 들어갈껍니다.
:
:
:
:
: soap 님이 쓰신 글 :
: : 사용자가 RichEdit component 위에서 double click 했을 때의 event를 처리하게 하려면 어떻게 해야 합니까?
: :
: : RichEdit의 기본 Event에는 더블클릭이 없는 것 같은데...
: : RichEdit component가 event handling을 해 줘야 하나요?
: :
|