The following tables compare MFC and wxWidgets constructs, grouped by macros and classes. Equivalent Macros in MFC and wxWidgets Table K-1 lists some important MFC macros and their wxWidgets equivalents. Table K-1. MFC and wxWidgets MacrosMFC Version | wxWidgets Version |
---|
BEGIN_MESSAGE_MAP | BEGIN_EVENT_TABLE | END_MESSAGE_MAP | END_EVENT_TABLE | DECLARE_DYNAMIC | DECLARE_CLASS | DECLARE_DYNCREATE | DECLARE_DYMAMIC_CLASS | IMPLEMENT_DYNAMIC | IMPLEMENT_CLASS | IMPLEMENT_DYNCREATE | IMPLEMENT_DYNAMIC_CLASS | IsKindOf(RUNTIME_CLASS(CWindow)) | IsKindOf(CLASSINFO(wxWindow)) |
Equivalent Classes in wxWidgets Table K-2 lists the main MFC classes and their wxWidgets equivalents. MFC classes not present in the table have no direct equivalent. Table K-2. MFC and wxWidgets ClassesMiscellaneous Classes |
---|
MFC Version | wxWidgets Version |
---|
CWinApp | wxApp | CObject | wxObject | CCmdTarget | wxEvtHandler | CCommandLineInfo | wxCmdLineParser | CMenu | wxMenu, wMenuBar, wxMenuItem | CWaitCursor | wxBusyCursor | CDataExchange | wxValidator | Window Classes |
---|
MFC Version | wxWidgets Version |
---|
CFrameWnd | wxFrame | CMDIFrameWnd | wxMDIParentFrame | CMDIChildWnd | wxMDIChildFrame | CSplitterWnd | wxSplitterWindow | CToolBar | wxToolBar | CStatusBar | wxStatusBar | CReBar | None, but see contrib/src/fl and wxDockIt (Appendix E) | CPropertyPage | wxPanel | CPropertySheet | wxNotebook, wxPropertySheetDialog | Dialog Classes |
---|
MFC Version | wxWidgets Version |
---|
CDialog | wxDialog | CColorDialog | wxColourDialog | CFileDialog | wxFileDialog | CFindReplaceDialog | wxFindReplaceDialog | CFontDialog | wxFontDialog | CPageSetupDialog | wxPageSetupDialog | CPrintDialog | wxPrintDialog | Control Classes |
---|
MFC Version | wxWidgets Version |
---|
CAnimateCtrl | wxMediaCtrl, wxAnimationCtrl | CButton | wxButton | CBitmapButton | wxBitmapButton | CComboBox | wxComboBox, wxChoice | CDateTimeCtrl | wxDatePickerCtrl | CEdit | wxTextCtrl | CHotKeyCtrl | None, but see Keybinder (Appendix E) | CListBox, CDragListBox | wxListBox | CCheckListBox | wxCheckListBox | CListCtrl | wxListCtrl, wxListView | CMonthCalCtrl | wxCalendarCtrl | CProgressCtrl | wxGauge | CReBarCtrl | None, but see contrib/src/fl and wxDockIt (Appendix E) | CRichEditCtrl | wxTextCtrl has limited rich edit functionality | CScrollBar | wxScrollBar | CSliderCtrl | wxSlider | CSpinButtonCtrl | wxSpinButton, wxSpinCtrl | CStatic | wxStaticText, wxStaticLine, wxStaticBox, wxStaticBitmap | CStatusBarCtrl | wxStatusBar | CTabCtrl | wxTabCtrl (some platforms only; use wxNotebook instead) | CToolBarCtrl | wxToolBar | CToolTipCtrl | wxToolTip | CTreeCtrl | wxtreeCtrl | Graphics Classes |
---|
MFC Version | wxWidgets Version |
---|
CBitmap | wxBitmap, wxImage, wxIcon, wxCursor | CBrush | wxBrush | CPen | wxPen | CFont | wxFont | CImageList | wxImageList, wxIconBundle | CPalette | wxPalette | CRgn | wxRegion | CClientDC | wxClientDC | CMetaFileDC | wxMetaFileDC (Windows and Mac OS X only) | CPaintDC | wxPaintDC | CWindowDC | wxWindowDC | CDC | wxMemoryDC | Data Structure Classes |
---|
MFC Version | wxWidgets Version |
---|
CArray, CObArray,CPtrArray | wxArray | CStringArray | wxArrayString | CDWordArray, CByteArray,CUIntArray | wxArrayInt | CList, CPtrList, CObList | wxList | CStringList | wxArrayString, wxStringList | CMap... classes | wxHashMap | CString | wxString | CPoint | wxPoint | CRect | wxRect | CSize | wxSize | CTime | wxDateTime | CTimeSpan | wxTimeSpan, wxDateSpan | COleVariant | wxVariant | Internet Classes |
---|
MFC Version | wxWidgets Version |
---|
CSocket | wxSocket | CFtpConnection | wxFTP | CHttpConnection | wxHTTP | Document/View Classes |
---|
MFC Version | wxWidgets Version |
---|
CDocument | wxDocument | CView | wxView | CDocTemplate, CSingleDocTemplate, CMultiDocTemplate | wxDocTemplate | Drag and Drop |
---|
MFC Version | wxWidgets Version |
---|
COleDataSource | wxDataObject | COleDropSource | wxDropSource | COleDropTarget | wxDropTarget | File Classes |
---|
MFC Version | wxWidgets Version |
---|
CFile | wxFile, wxFFile, wxTextFile | CMemFile | wxMemoryInputStream, wxMemoryOutputStream | CSocketFile | wxSocketInputStream, wxSocketOutputStream | CRecentFileList | wxFileHistory | Multithreading Classes |
---|
MFC Version | wxWidgets Version |
---|
CWinThread | wxThread | CCriticalSection | wxCriticalSection | CMutex | wxMutex | CSemaphore | wxSemaphore |
The following classes have no equivalent in wxWidgets: CDialogBar, all classes prefixed COle, all C...View classes, all C...Exception classes, CHeaderCtrl, and CIPAddressCtrl. |