原型:
typedef struct _TV_ITEM 

tvi UINT mask; 
HTREEITEM hItem;
 UINT state; 
UINT stateMask; 
LPSTR pszText; 
int cchTextMax; 
int iImage; 
int iSelectedImage; 
int cChildren; 
LPARAM lParam; 

TV_ITEM, FAR* LPTV_ITEM;
 
我需要继承并派生为:
typedef struct _TV_ITEM 

tvi UINT mask; 
HTREEITEM hItem;
 UINT state; 
UINT stateMask; 
LPSTR pszText; 
int cchTextMax; 
LPSTR pszText02; --------------这里是增加的一项 
int cchTextMax02;  --------------这里是增加的一项 
int iImage; 
int iSelectedImage; 
int cChildren; 
LPARAM lParam; 

TV_ITEM, FAR* LPTV_ITEM;
--------------------------------------------------------------------------------
呵呵,感觉从来没这么用过!!!!!!!

解决方案 »

  1.   


    typedef struct _TVITEM
    {
    TV_ITEM tvi;
    int a;
    char* p;
    }NEWTVITEM,*PNEWTVITEM;这样不行?
      

  2.   


    貌似不对,TV_ITEM 原有结构在 m_tree.insertitem(&tvItem) 后可以保存数据,
    当选中时候,可以得到 tvItem.pszText 数据,如果这样定义,增加的两个参数,数据如何保存?
      

  3.   

    tree不负责保存增加的两个参数,数据要你自己保存。
    也就是你要有n个NEWTVITEM。这样并没有带来好处,数据是重复的。
    不如加一个结构,把你的结构地址存到tree的Data中去。
      

  4.   

    要不你看看这个LPARAM lParam;  
    反正这个lParam可以保存一个LPVOID
    你就把你的那个信息保存成自定义结构体
    这里包含
    LPSTR pszText02; --------------这里是增加的一项  
    int cchTextMax02; --------------这里是增加的一项  
    以及原有的LPARAM lParam; 信息