rendered paste bodyprivate static class HorizontalScrollHelper implements Listener { public void handleEvent(Event e) { Tree tree = ((Tree)e.widget); TreeItem target = seek(tree.getItems(), e.y); if (target != null) tree.showItem(target); } private TreeItem seek(TreeItem[] items, int y) { TreeItem ret = null; for (int i = 0; i < items.length; i++) { TreeItem item = items[i]; int iBottom = item.getBounds().y+item.getBounds().height; if (iBottom > y) { return item; } if (item.getExpanded()==true) { ret = seek(items[i].getItems(), y); if (ret != null) break; } } return ret; } }