There is an option to change images using wxBtmapButton :: SetBitmapSelected ()
When attempting to set wxBtmapButton :: SetBitmapSelected (), it is only possible at the beginning
and subsequent Refresh () does not change the picture

Unfortunately the OP did not provide the wxWidgets version he uses, guessing from the obsolete IDE, perhaps he is also using an obsolete wxWidgets version (pre 3.x) which may behave differently. AFAIK, the button code was revamped around 2.9...