Color List Box With Extra Bits

Environment:

Developed using VC6, tested on Win2k Pro and XP Pro.

This MFC CListBox class extension is result of searching for a listbox that does exactly what I have implemented here, except for the vertical alignment. After browsing through CodeGuru site, I found some code but none that fully matched my project needs. Still, all the credit to Patrice Godard and Paul M. Meidinger for designing CColorListBox class, found at
http://www.codeguru.com/listbox/colorlb.shtml
, that I got the idea from.

CListBoxEBX Features

  • Background color.
  • Foreground color.
  • Text horizontal alignment.
  • Text vertical alignment.
  • Indicating inactive items.
  • Hooking of a DWORD value per item as in original SetItemData().
  • Allows for setting of the items height

Future desired features

  • Font manipulation.
  • Use of images
  • Horizontal scrolling.



// Instantiate the wrapper for the list box window
CListBoxEBX m_xList;

// This can be inserted in the ::OnInitDialog()
m_xList.SetItemHeight(40);
m_xList.AddItem(“First string”);
m_xList.AddItem(“Last string”);
m_xList.InsertItem(“Middle string #1”, 1, RGB(50, 100, 150),
RGB(255, 255,255));
m_xList.InsertItem(“Middle string #2”, 1, RGB(100, 150, 200),
RGB(255, 255,255));
m_xList.InsertItem(“Middle string #3”, 1, 12432321,
RGB(255, 255,255));

m_xList.SetActive(FALSE, 2);
m_xList.SetCurSel(0);

Downloads

Download demo project – 20 Kb

Download source – 5 Kb

More by Author

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends & analysis

Must Read