Custom Image Button

Discussion in 'C++' started by shabbir, Nov 27, 2007.

  1. Skezza

    Skezza New Member

    Joined:
    Jul 3, 2012
    Messages:
    2
    Likes Received:
    0
    Trophy Points:
    0
    Hello,
    I know this thread is 2 years old but I was sent the link by a colleague who is learning WinCE 6 development. He was having problems using more than one CGuiButton. They were disappearing rather inexplicably. For example, pressing on one, then another would remove the bitmap from the first button.

    I ran through the code on my lunch break at work and have found the cause:

    Code:
    void CGuiButton::OnKillFocus(CWnd* pNewWnd)
    {
    	this->Invalidate();
    }
    line 139 of GuiButton.cpp : this->Invalidate(); is unnecessary in my opinion.

    My own experience is fairly middle of the road, but I just wondered why it was there? I cannot see a reason to call Invalidate() on the CGuiButton on kill focus. The only reason to call Invalidate is if the region needs repainting, but for a Bitmap button, I can't see when this would be the case.
    Rather than say this fixes it (it does in my case) I was wondering if you could explain why it was there in the first place as I'm sure it isn't there for nothing?

    Cheers
     
  2. Skezza

    Skezza New Member

    Joined:
    Jul 3, 2012
    Messages:
    2
    Likes Received:
    0
    Trophy Points:
    0
    For those who aren't sure, comment out the line and try again.
     

Share This Page

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice