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
[25326] Re:이렇게 하면 간단하게 깜빡거림 해결이 되겠지여?
서비 [suby] 1076 읽음    2003-04-24 10:12
// Header
//---------------------------------------------------------------------------
private:
    String g_ShapeName;
    String g_OldShapeName;

// Source
//---------------------------------------------------------------------------
void __fastcall TForm1::AllShapeMouseMove(TObject *Sender, TShiftState Shift,
      int X, int Y)
{
    g_ShapeName = ((TShape*)Sender)->Name; // 님께서 하신대루 dynamic_cast를 해줘도 되겠져


    if(g_OldShapeName == g_ShapeName)
        return;

    RichEdit1->Lines->Clear();    // if문 마다 Clear를 넣어주는것 보단 깔끔하겠죵.

    if(Sender == A)
    {
        RichEdit1->Lines->Add("Device");
        RichEdit1->Lines->Add("..........");
    }
    else if(Sender == B)
    {
        RichEdit1->Lines->Add("View");
        RichEdit1->Lines->Add("!!!!!!!!!!");
    }
    else if(Sender == C)
    {
        RichEdit1->Lines->Add("Doc");
        RichEdit1->Lines->Add("@@@@@@@@@@");
    }
    else if(Sender == D)
    {
        RichEdit1->Lines->Add("explore");
        RichEdit1->Lines->Add("##########");
    }

    g_OldShapeName = ((TShape*)Sender)->Name;
}
//---------------------------------------------------------------------------

바램 님이 쓰신 글 :
: TShape로 A,B,C,D 4개를 버튼 모양으로 만든다음
: 각 Shape위로 마우스가 지나갈때..그 Shape의 동작 상태를
: RichEdit에 표시할려구 합니다.
:
: 그런데..다음과 같이 사용하니 마우스가 조금만 움직여도
: 다시 그리니 글자가 깜깜박하면서 계속 다시 써주더라구요..
:
: 하나의 Shape 사이즈 위에 있을때 한번만 그려주게 하는 방법은
: 어떻게 하면 좋은가여?
:
: void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift,int X, int Y)
: {
:   TShape* Shape = dynamic_cast<TShape*>(Sender);
:   if(Shape == A)
:   {
:
:     RichEdit1->Clear();
:     RichEdit1->Lines->Add("Device");
:     ....
:   else if(Shape == B)
:   {
:
:     RichEdit1->Clear();
:     RichEdit1->Lines->Add("View");
:     ...
:   }
:   else if(Shape == C)
:   {
:
:     RichEdit1->Clear();
:     RichEdit1->Lines->Add("Doc");
:     ...
:   }
:   else if(Shape == D)
:   {
:
:     RichEdit1->Clear();
:     RichEdit1->Lines->Add("explore");
:     ...
:   }
: }
:
:

+ -

관련 글 리스트
25310 [질문]떨림현상.. 바램 691 2003/04/22
32364     Re:[질문]떨림현상.. 김진호.불사새 789 2003/04/23
32363     Re:[질문]떨림현상.. 초보 695 2003/04/22
32362     Re:[질문]떨림현상.. 짱구오빠 726 2003/04/22
32361     Re:[질문]떨림현상.. 초보 746 2003/04/22
32360     Re:[질문]떨림현상.. 서비 733 2003/04/22
25326     Re:이렇게 하면 간단하게 깜빡거림 해결이 되겠지여? 서비 1076 2003/04/24
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.