Thanks for your rapid reply.
About the menu:
About the tree view:
You said labels are only used for input controls. Well, I am using the tree view as an input control, since I am creating a number of check box nodes that can be selected. I have 4 top-level nodes (uncheckable) and any number of checkable sub-nodes under each top node.
One problem is that when I use the keyboard to tab through the controls on the page and finally get to the treeview control the entire control gets selected, not the first node. A dashed line box is drawn around the entire control including all nodes. In order to get focus to an individual node I need to hit the down arrow key. My tester is complaining that this is not obvious to the user. What is the recommended way to alert the user that this is a tree view and the keyboard shortcuts are valid for it? It doesn't look like the treeview has a "ToolTip" property. Individual nodes do, but there doesn't seem to be one for the overall tree view control.
I think what they mean by name, role, and state is best seen using a tool from Microsoft called Inspect32.exe. This is a free tool. I have never used this tool, but apparently it is used to inspect various attributes of browser controls. Apparently, the JAWS reader uses these attributes to figure out how to handle the control. For the tree view control, the name is blank, so that might be part of the problem.
Here what else I noticed:
On another page, I have a regular check box. When I hover over that check box, the Inspect32 tool shows the name as whatever the text of the text box is (for example, if the text of the check box is "Hello", the name in Inspect32 is "Hello". It shows the role as "check box" and the state as "focused,focusable". If I check the box, the state changes to "focused,checked,focusable". This all makes sense.
Now, when I go to the page that has the tree view (which has nodes that are checkable), and I hover over one of the check boxes in one of the checkable nodes, the name is "none [false]", the role and state are the same as the normal check box and change properly when I check the box. It appears that the tree view checkable nodes are not properly reporting the name attribute, at least as far as Inspect32 is concerned.
So, the menu problem is still not solved (probably due to me doing something wrong), I need to know how to alert the user to how to the fact that a treeview is in focus and how to navigate it, and the individual checkable nodes do not seem to be reporting the name properly.
Thanks for your help.