Usare il Table Combo di Nebula è un'operazione tutto sommato semplice, anche se manca un po' di documentazione a riguardo. Mostro di seguito i passi necessari all'utilizzo del widget, che nel caso della mia applicazione visualizzano una semplice tabella con ID/Descrizione di elementi.
Anzitutto occorre inizializzare il componento e definire le colonne (se si omette questo passo si avrà un combo che visualizza solo una delle colonne). Successivamente si decide se visualizzare o meno le intestazioni di colonna e infine si stabilisce quale colonna (con indice numerato partendo da zero) si deve rendere visibile nel combo quando questo è chiuso. Il seguente pezzo di codice illustra quanto appena descritto:
// create the combo with the right style
this.combo = new TableCombo( this , SWT.READ_ONLY );
// say I want two columns
this.combo.defineColumns( new String[]{ "ID", "Descrizione" } );
this.combo.setShowTableHeader( true );
// the description is the column used for the selection
this.combo.setDisplayColumnIndex( 1 );
this.combo = new TableCombo( this , SWT.READ_ONLY );
// say I want two columns
this.combo.defineColumns( new String[]{ "ID", "Descrizione" } );
this.combo.setShowTableHeader( true );
// the description is the column used for the selection
this.combo.setDisplayColumnIndex( 1 );
Successivamente occorre inserire gli elementi nel combo, tenendo presente che occorrerà passare una coppia di stringhe in un unico oggetto array:
TableItem tableItem = new TableItem( this.combo.getTable(), SWT.NONE );
tableItem.setText(
new String[]{ newElement.getId(), newElement.getDescription() } );
Nessun commento:
Posta un commento