I used JGo java lib to create diagram with nodes.
JGo doesn’t have any built-in tab index, but you implement it by adding a tab index member to your existing node class (or adding it to the data referenced by JGoNode UserObject). Then handle the key pressed event by adding a key listener (see the keyPressed method in Demo1.java for an example). If the key is VK_TAB, check the current primary selection in the JGoSelection object (JGoView.getSelection). If the current primary selection is your JGoNode class, check the tab index member value. You can then iterate through all the top level JGoObjects in your JGoDocument looking for the node with the next higher index value and make that the current selection (see JGoDocument getFirstObjectPos and getNextObjectPos).
Ah, so you’re interested in doing a text to speech operation on the text associated with a node? This isn’t part of JGo and in fact I don’t believe it’s part of the JDK, but I there is a Java Speech API (JSAPI) that you may want to look at: