Nothing special, I'm just loading the tree with more nodes than I know will fit in the window and asking it how many are visible. The math I mentioned was just a thought that if I had a minimum of adequate parameters I could calculate which nodes are showing.
I have found that I can iterate the Nodes collection and check the .Visible property. Sure enough, the first one that returns True always seems to be the node at the top of the window. I still haven't found a way to hook into the scroll bar which is what I think I really need. I believe I can find the top visible node now but still won't know when it is necessary to do so to realign the listview.
simpler to base what's displayed in the listview on what the user has selected
I need something similar to what is shown here:
http://www.vbaccelerator.com/home/v...iew/Multi-Column_TreeView_Control/article.asp
The short answer is the user has already made their selection before the tree is even populated. This project is meant to generate a multi level bill of materials for a retired database. The user has already requested a BOM for (ancient) assembly "xyz" and that is what I am loading into the tree. The part number(s) alone aren't good enough. I must at least provide the part description, quantity, revision and perhaps a few other fields in the adjacent "ListView" control. I am looking that data up in another large "Part Master" table.
We no longer have the program that originally generated the tables (or BOMs), only the tables themselves. I have already implemented all of this in Excel using cell indents to produce a printable display very much like that shown at the link above. Drawing the lines to connect the nodes using autoshapes or unicode characters (fluff) is cumbersome and in the end the user cannot expand or collapse the nodes. Otherwise, it is already working well.
Also, the product structure table is more than 150K records. I had to span this table across 3 sheets in Excel (XL2000) order to have all assemblies that existed in the old database available. If I can replicate what I have already done in Excel using these controls (or others) I may be able to move these tables to Access or even create a standalone executable.
Any selections that the user might make in the tree will be just added fluff that will open the CAD drawing or component specification or provide a "where used" function. The Excel version of this project already has these features and they are often used. I suppose the users will insist that they be included.
Thanks very much for your continued interest.
Gary