MFC Grid control (наследованный от
CWnd)
Автор: Chris Maunder.
Copyright © 1998-1999 Chris Maunder.
Скачать исходники (56 Kb) или демонстрашку (101 Kb).
Оболочки: VC++ 5.0, VC 6.0 SP1, NT 4.0 (SP3,4), Win95/98, WinCE 2.0/2.11
Описание
Если у Вас возникла необходимость добавить в
своё приложение табличку наподобие Excel, то данный
элемент управления может очень даже пригодиться.
Во всяком случае у меня он зазаботал с первого
раза и не потребовалось вникать в длинное
описание грида.
Файлы
Чтобы использовать элемент управления Grid Вам
необходимо включить в свой проект следующие
файлы:
|
gridctrl.cpp, gridctrl.h |
Основной код элемента управления и
заголовочный файл. |
|
CellRange.h |
Вспомогательный заголовочный файл для
ячеек. |
|
MemDC.h |
Вспомогательный заголовочный файл для
работы с отображением в памяти. |
|
InPlaceEdit.cpp, InPlaceEdit.h |
Исходные коды для функций
редактирования ячеек. |
|
GridDropTarget.cpp, GridDropTarget.h |
Исходник для возможности
перетаскивания. Эти файлы необходимы только если
Вы не объявляли GRIDCONTROL_NO_DRAGDROP в gridctrl.h |
|
Titletip.cpp, Titletip.h |
Заголовки для ячеек. Необходимы только
если Вы не объявляли GRIDCONTROL_NO_TITLETIPS в gridctrl.h |
Конструирование
OK - итак, как это сделать?
Основной класс грида - это CGridCtrl , который
наследуется от CWnd. Чтобы использовать его,
необходимо в редакторе ресурсов MS Visual C++
поместить на форму или диалог "custom control", и
ввести в имени класса (Class name) "MFCGridCtrl" (без
кавычек) либо использовать функцию CGridCtrl::Create:
CGridCtrl(int nRows = 0, int nCols = 0, int nFixedRows = 0,
int nFixedCols = 0);
BOOL Create(const RECT& rect, CWnd* parent, UINT nID,
DWORD dwStyle = WS_CHILD | WS_BORDER | WS_TABSTOP | WS_VISIBLE);
void AFXAPI DDX_GridControl(CDataExchange* pDX, int nIDC,
CGridCtrl&rControl);
|