https://www.codeproject.com/Articles/8/MFC-Grid-control-2-27
踩坑01、x64 位系統
CGridCtrl::OnTimer(UINT_PTR nIDEvent)
踩坑02、WIN10
//- Modify the following defines if you have to target a platform prior to the ones specified below.
//- Refer to MSDN for the latest info on corresponding values for different platforms.
#ifndef WINVER //- Allow use of features specific to Windows 95 and Windows NT 4 or later.
#define WINVER 0x600 //- Change this to the appropriate value to target Windows 98 and Windows 2000 or later.
#endif
#ifndef _WIN32_WINDOWS
#define _WIN32_WINDOWS 0x0501
#endif
_WIN32_WINDOWS WINVER兩個要匹配
03、undefine 不管用,還是包含進來吧
GridDropTarget.cpp, GridDropTarget.h |
Grid control OLE drag and drop target. Only necessary if you don't define GRIDCONTROL_NO_DRAGDROP in gridctrl.h |
Titletip.cpp, Titletip.h |
Titletips for cells, from Zafir Anjum. Only necessary if you don't define GRIDCONTROL_NO_TITLETIPS in gridctrl.h |
使用:
窗體右鍵 ==》 添加變量 CGridCtrl mGrid==》
在添加的自定義控件的屬性對話框中設置Class屬性爲MFCGridCtrl(必須),
控件ID設置爲IDC_GRID(可自由設定)
勾選控件變量 選擇上面設置的自定義控件的Id
爲控件關聯變量,變量類型爲CGridCtrl,控件類型爲MFCGridCtrl,
在void CMfcDialogLevSet::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_LIST_LevInfo, m_CListCtrl_LevInfo);
DDX_GridControl(pDX, IDC_GRID, m_pGrid);//此次改爲DDX_GridControl
}