
Introduction
I am working in a CAPP project which based on database.
We often use combo-box to show all table in database to user and let user select a table,
it's a simple way, not only for the user but also for coder.
In some condition, there is special relationship between one table and another table,
the simple combo-box can't describe it. I write a new class to deal with this condition.
I use a struct to store the relationship between items (tables):
typedef struct tagITEMDATA
{
WORD wParantOriginIdx;
WORD wOriginIdx;
BYTE cType;
BYTE cLevel;
}ITEMDATA,*LPITEMDATA;
wParantOriginIdx
is the item's parent original index (the
index when it was first insert to combo-box), the index of items may change
when you add or delete items, so we should keep it.
wOriginIdx
is item's original index.
cType
mark the item type, maybe use for other special .
cLevel
is the level of items, children level is higher than parents.
This struct is the core of CWzCombox
class, please check source code for detail.