Foros del Web » Programación para mayores de 30 ;) » Java »

Ayuda con edicion de tree en java swt designer

Estas en el tema de Ayuda con edicion de tree en java swt designer en el foro de Java en Foros del Web. Hola a todos, he creado un tree para mostrar unas tags, y ahora lo que pretendo es que desde el mismo tree pueda editar cada ...
  #1 (permalink)  
Antiguo 21/05/2010, 02:22
 
Fecha de Ingreso: noviembre-2007
Mensajes: 15
Antigüedad: 17 años
Puntos: 0
Ayuda con edicion de tree en java swt designer

Hola a todos, he creado un tree para mostrar unas tags, y ahora lo que pretendo es que desde el mismo tree pueda editar cada celda, el problema que tengo es que solo me permite modificar la primera columna, las demas columnas no me deja seleccionarlas, os dejo parte del codigo a ver si alguien me sabe solucionar el problema, gracias

Tree _tree;
_tree = new Tree(group, SWT.BORDER | SWT.FULL_SELECTION);
_tree.setLinesVisible(true);
_tree.setHeaderVisible(true);
_tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 4, 1));
final TreeEditor editor = new TreeEditor(_tree);
editor.horizontalAlignment = SWT.LEFT;
editor.grabHorizontal = true;
_tree.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent event) {
if (event.keyCode == SWT.CR) {
editTree();
final TreeItem item = _tree.getSelection()[0];
final Text text = new Text(_tree, SWT.NONE);
text.setText(item.getText());
text.selectAll();
text.setFocus();

text.addFocusListener(new FocusAdapter() {
public void focusLost(FocusEvent event) {
item.setText(text.getText());
text.dispose();
}
});

text.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent event) {
switch (event.keyCode) {
case SWT.CR:
item.setText(text.getText());
case SWT.ESC:
text.dispose();
break;
}
}
});

editor.setEditor(text, item);

}
}
});

Etiquetas: designer, swt, tree
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:49.