2015-07-21 8 views
7

Ho creato alcune schede in un pannello delle schede. Ogni volta che faccio una scheda ha un pulsante di chiusura (x) sul lato destro. Non voglio le schede per essere rimosso dal riquadro della scheda così ho usatoCome rimuovere il pulsante di chiusura dalle schede in javafx

TabPane tabPane=new TabPane(); 
Tab tab=new Tab("new tab"); 
tab.setContents(new Label("Please help");); 
tabpane.getTabs().add(tab); 
tab.setOnCloseRequest(e -> e.consume()); 

in modo che non verrà rimosso. C'è un modo per non visualizzare questo pulsante di chiusura nella scheda. ogni aiuto è apprezzato

risposta

12

È possibile impostare il TabClosingPolicy su un TabPane

myTabPane.setTabClosingPolicy(TabClosingPolicy.UNAVAILABLE); 

Ci sono le seguenti possibilità:

  • TabClosingPolicy.ALL_TABS // tutte le schede possono essere chiuse
  • TabClosingPolicy .SELECTED_TAB // può essere chiusa solo la scheda selezionata
  • TabClosingPolicy.UNA Vailable // non puoi chiudere

Se si aggiungono le classi di myTabPane.getTabs() c'è anche la possibilità di impostare la classe di non essere chiudibile (perché ha bisogno di estendersi da Tab):

setClosable(false); 

Se lo definisci nella classe che si estende da Tab Immagino che la politica che hai impostato sarà inutile ed è sovrascritta.

link al documento di Oracle: JavaFX 8 TabPane.TabClosingPolicy

+0

Grazie mille. ha funzionato – KimboKast