Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / Languages / C++

CGrid Control

4.14/5 (18 votes)
8 May 2007CPOL1 min read 1   5.2K  
An article on a grid control built with Windows API. Also includes an MFC class
Screenshot - mfc.jpg

Introduction

This article presents a Grid control which is built with Windows API. It also has an MFC class.

Background

You can get many grid controls from the Internet. Maybe some of them are free and others are not. Grid is a useful control to show or edit data. The grid control presented in this article support up to 65536 rows and 256 columns. It also supports text edit and boolean type edit.

Using the Code

To use the Grid control in SDK project, grid_lib project must be compiled. And after that, a header file must be included.

C++
#include "grid_lib\grid_lib.h"

Next, initialize the Grid and create a window handle of the Grid.

C++
InitGrid(::GetModuleHandle(NULL));
hWndGrid = CreateGrid(WS_VISIBLE | WS_CHILD, 0, 0, 0, 0, hWnd, ::GetModuleHandle(NULL));

To use the Grid control in MFC project, grid_lib project must be compiled. And after that, a header file must be included.

C++
#include "MFCGrid.h"

After creating an instance of grid control, use GetGrid() function to get the CGrid* pointer. The CGrid control supports the following:

  • CellFromPoint
  • ClearCell
  • Draw
  • Get background brush
  • Get/set background color
  • Get/set fix cell background color
  • Get/set fix cell board color
  • Get/set focus cell board color
  • Get/set selected cell background color
  • Get/set sheet background color
  • Get/set column count
  • Get/set row count
  • Get/set fix row count
  • Get/set fix column count
  • Get/set font
  • GetMergeInfo
  • Get/set row height
  • Get/set column width
  • Insert/remove row
  • Insert/remove column
  • Merge/split cells
  • Get/set cell text
  • Get/set cell char
  • Get/set cell uchar
  • Get/set cell short
  • Get/set cell ushort
  • Get/set cell int
  • Get/set cell uint
  • Get/set cell long
  • Get/set cell ulong
  • Get/set cell float
  • Get/set cell double
  • Get/set cell bool

History

  • 29/05/2007: First release

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)