wxWidgets第八课wxControl自定义控件
说明
成都创新互联公司服务项目包括沙河口网站建设、沙河口网站制作、沙河口网页制作以及沙河口网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,沙河口网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到沙河口省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
从wxControl中派生出一个控件,调用OnPaint函数对控件进行渲染
例子
头文件
#include "wx/bitmap.h"
#include "wx/control.h"
#include "wx/dcclient.h"
声明
class CFlightInstrumentCompass : public wxControl
{
private:
DECLARE_DYNAMIC_CLASS(CFlightInstrumentCompass)
DECLARE_EVENT_TABLE()
public:
CFlightInstrumentCompass() {Init();}
void Init() {}
CFlightInstrumentCompass(wxWindow *parent,
wxWindowID id,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = 0,
const wxValidator& validator = wxDefaultValidator)
{
Init();
Create(parent, id, pos, size, style, validator);
}
bool Create(wxWindow *parent,
wxWindowID id,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = 0,
const wxValidator& validator = wxDefaultValidator);
~CFlightInstrumentCompass(void);
protected:
void OnPaint(wxPaintEvent& event);
};
定义
BEGIN_EVENT_TABLE(CFlightInstrumentCompass, wxControl)
EVT_PAINT(CFlightInstrumentCompass::OnPaint)
END_EVENT_TABLE()
IMPLEMENT_DYNAMIC_CLASS(CFlightInstrumentCompass, wxControl)
void CFlightInstrumentCompass::OnPaint( wxPaintEvent& event )
{
}
提醒
为了减少闪烁,重写OnEraseBackground函数,并且留空,说明不再需要擦除背景
分享标题:wxWidgets第八课wxControl自定义控件
文章分享:http://scyanting.com/article/jdhdoo.html