2010-05-27 17 views
6

Quiero tener el texto decir una cosa, pero tener el valor de decir otraSwt nombre de cuadro combinado/par de claves

Texto clave

pero sólo se necesita una cadena para añadir elementos.

Cómo hacer los programadores de Java suelen almacenar texto/id pares en cuadros combinados

Respuesta

13

Tal vez se puede utilizar la tecla (String, Object value) setData método del cuadro combinado a achive lo que quiere.

Ejemplo:

Combo box = new Combo(parent, SWT.DROP_DOWN); 
String s = "Item 1"; 
box.add(s); 
box.setData(s, "Some other info or object here"); 
s = "Item 2"; 
box.add(s); 
box.setData(s, "This is item two"); 

String value = (String)box.getData("Item 2"); 
// value is now "This is item two" 

Nota que el método GetData devuelve un objeto. Entonces debe convertirlo al Tipo que establece con el método setData.

Debido a esto no está limitado a establecer Cadenas como sus valores. Puede establecer cualquier Objeto que desee como valor con el método setData. Solo asegúrese de lanzar correctamente cuando reciba los datos nuevamente con el método getData.

Editar: Por cierto, puede utilizar los métodos setData y getData en cualquier widget SWT.