c++ - wxWidgets drawing Panel -
i'm doing application wxwidgets , need draw few images on different panels. in application there 1 main frame, contains panel, contains buttons , text box. want create drawing panels on panel. create simple test class based on wxwidgets examples draw stuff.
#include "minibitmap.h" minibitmap::minibitmap(wxpanel *parent, int x, int y, int width, int height, char *bits) : wxpanel(parent, x, y, width, height) { img = wxbitmap(100,100, wxbitmap_screen_depth); } minibitmap::minibitmap(wxpanel *parent, wxwindowid id, const wxpoint& pos, const wxsize& size) : wxpanel(parent, id, pos, size) { } void minibitmap::paintevent(wxpaintevent & evt) { // depending on system may need @ double-buffered dcs wxpaintdc dc(this); render(dc); } void minibitmap::paintnow() { // depending on system may need @ double-buffered dcs wxclientdc dc(this); render(dc); } void minibitmap::render(wxdc& dc) { // dc.drawbitmap( img, 0, 0, false ); dc.drawtext(wxt("testing"), 40, 60); dc.setbrush(*wxgreen_brush); // green filling dc.setpen( wxpen( wxcolor(255,0,0), 5 ) ); // 5-pixels-thick red outline dc.drawcircle( wxpoint(200,100), 25 /* radius */ ); refresh(); }
in frame connect event in event table
evt_paint(id_mini, minibitmap::paintevent)
i create minibitmap type object dynamically in main frame constructor. don't know library, don't know making mistake. can panel child of panel? or maybe wrong connected events?
Comments
Post a Comment