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
[47641] 테두리가 생기는 이미지 버튼 component 생성하기?
초록물고기 [] 1064 읽음    2007-01-04 11:23
안녕하세요..
마우스가 이미지 버튼위나 toolbutton 위에 왔을때, button의 테투리가 생기게 한다든지,
이미지가 바뀌게 한다든지의 operation을 하고 싶어서,
CM_MOUSEENTER와 CM_MOUSELEAVE 를 메시지 맵에 집어 넣어서 새로운 compent 설치
까지 성공적으로 되었는데...
이렇게 생성된 컴포넌트를 폼위에 가져다 놓고,
event를 확인해  보면, 추가 했던 CM_MOUSEENTER와 CM_MOUSELEAVE 가 없습니다.
무엇인가의 추가적으로 더 작업을 해야하는건지요?

위의 기능을 수행하고 있는, 이미 만들어진 컴포넌트는 없나요? ( C++ builder componet 중에 )
dxforumLibary를 설치해 보았는데, (멋진 이미지 버튼은 많은데... ) 위와 같은 기능을 수행하는
버튼은 없는것 같아서요!!!

==== CM_MOUSEENTER와 CM_MOUSELEAVE 를 메시지 맵에 추가한 simple 한 code ====
//헤더.
//---------------------------------------------------------------------------

#ifndef MyToolButtonH
#define MyToolButtonH
//---------------------------------------------------------------------------
#include <SysUtils.hpp>
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <comctrls.hpp>
//---------------------------------------------------------------------------
//     TButtonControl=> TToolButton
class PACKAGE TMyToolButton : public TToolButton
{
private:

      void OnMouseEnter(TMessage &msg);
      void OnMouseLeave(TMessage &msg);

protected:
public:
        __fastcall TMyToolButton(TComponent* Owner);
__published:

BEGIN_MESSAGE_MAP
     VCL_MESSAGE_HANDLER(CM_MOUSEENTER, TMessage, OnMouseEnter);
     VCL_MESSAGE_HANDLER(CM_MOUSELEAVE, TMessage, OnMouseLeave);
END_MESSAGE_MAP(TToolButton);

};
//---------------------------------------------------------------------------
#endif

//cpp 파일
#include <vcl.h>
#pragma hdrstop
#include "MyToolButton.h"
#pragma package(smart_init)
void TMyToolButton::OnMouseEnter(TMessage &msg)
{
    Label1->Text  = "들어왔슴"; // 나중에 이미지나 버튼의 테두리가 변하는 작업을 해야함.
}
void TMyToolButton:: OnMouseLeave(TMessage &msg)
{
   Label1->Text = "나갔슴";//나중에 이미지나 버튼의 테두리가 변하는 작업을 해야함
}
static inline void ValidCtrCheck(TMyToolButton *)
{
        new TMyToolButton(NULL);
}
//---------------------------------------------------------------------------
// TButtonControl ==> TToolButton
__fastcall TMyToolButton::TMyToolButton(TComponent* Owner)
        : TToolButton(Owner)
{
}
//---------------------------------------------------------------------------
namespace Mytoolbutton
{
        void __fastcall PACKAGE Register()
        {
                 TComponentClass classes[1] = {__classid(TMyToolButton)};
                 RegisterComponents("Samples", classes, 0);
        }
}
//---------------------------------------------------------------------------

+ -

관련 글 리스트
47641 테두리가 생기는 이미지 버튼 component 생성하기? 초록물고기 1064 2007/01/04
47653     Re:테두리가 생기는 이미지 버튼 component 생성하기? 외랑 1079 2007/01/05
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.