Click here to Skip to main content
Licence GPL3
First Posted 31 Jul 2002
Views 92,032
Bookmarked 43 times

Store and show Tree struct in a Combobox

By | 31 Jul 2002 | Article
Store and show Tree struct in Combobox

Sample Image - CWzCombox.gif

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; //the root item's parent is nRootIndex
    WORD wOriginIdx; //Original index when first insert to listbox
    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.

License

This article, along with any associated source code and files, is licensed under The GNU General Public License (GPLv3)

About the Author

Simon.W

Software Developer (Senior)

China China

Member

I had graduated from HuaZhong University of Science & Technology. Now, I'm working in ZTE.

Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
You must Sign In to use this message board. (secure sign-in)
 
Search this forum  
 FAQ
    Noise  Layout  Per page   
  Refresh
GeneralVery useful code ! PinmemberNice Gom13:31 18 Jan '11  
GeneralImplementation in C/C++ using the Win32 API Pinmemberhcraes7:16 4 Nov '09  
GeneralSame thing in C# Pinmember10160:48 29 Jan '09  
QuestionItem Data Pinmemberblackbondi2:18 7 Jan '08  
AnswerRe: Item Data PinmemberApollo_Apollo16:50 18 Jun '08  
General1 question PinmemberVC Spark1:06 20 Jun '07  
GeneralRe: 1 question PinmemberSimon.W4:32 26 Jun '07  
GeneralRe: 1 question PinmemberVC Spark3:04 4 Jul '07  
GeneralThank you Pinmemberjohnxie20:06 28 Sep '06  
GeneralVery good. One thing to keep in mind though Pinmemberstrtdusty10:38 7 Mar '05  
Questionvery nice...one question? Pinmembervivadotnet16:57 20 Jun '04  
GeneralExcellent! PinmemberDominik Reichl8:55 2 Jul '03  
GeneralUseful tool PinmemberDavid Spain4:12 6 Aug '02  
GeneralRe: Useful tool PinmemberXSimon15:16 13 Aug '02  
GeneralPretty Good!! PinmemberWREY9:07 5 Aug '02  

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Mobile
Web04 | 2.5.120517.1 | Last Updated 1 Aug 2002
Article Copyright 2002 by Simon.W
Everything else Copyright © CodeProject, 1999-2012
Terms of Use
Layout: fixed | fluid