2015-07-21 3 views
1
package sample.GUI; 

import sample.sampleThing; 
import javafx.fxml.FXML; 
import javafx.fxml.Initializable; 
import javafx.scene.control.*; 
import javafx.scene.layout.AnchorPane; 

import java.net.URL; 
import java.util.Objects; 
import java.util.ResourceBundle; 

@SuppressWarnings("unused") 
public class Console implements Initializable { 
    public TextField messageOut = new TextField(); 
    public TextArea consoleOutput = new TextArea(); 
    public AnchorPane TabAnchorPane = new AnchorPane(messageOut, consoleOutput); 
    public Tab tab = new Tab("Tab", TabAnchorPane); 

    @FXML 
    private TabPane tabPane; 
    SingleSelectionModel<Tab> selectionModel = tabPane.getSelectionModel(); 

    String string1, string2; 

    public Console() { 
     super(); 
    } 

    public Console(String str, String str2) { 
     super(); 
     this.string1 = str; 
     this.string2 = str2; 
    } 

    public void newTab(String str){ 
     Tab ntab = tab; 
     tab.setText(str); 
     tabPane.getTabs().add(ntab); 
    } 

    public void initialize(URL url, ResourceBundle rb){ 
     Tab tab1 = tab, tab2 = tab; 
     tab1.setText(string1); 
     tab2.setText(string2); 
     tabPane.getTabs().addAll(tab1, tab2); 
    } 

    public void clear() { 
     Tab tmptb = selectionModel.getSelectedItem(); 

     //GUIUtils.runSafe(tmptb.consoleOutput::clear); 
    } 

кода из моего графического интерфейса класса (все переименованы в тайне о моем проекте) Что мне нужна помощь в получении consoleOutput & & messageOut на вкладке частностиJavaFX получить элементы из вкладки

node[] arr = getTab.getContent.getNodeArray //or something like that 
for(node nd : arr) { 
    if (nd == consoleOutput || nd == messageOut) 
     //do much stuff 
} 

Я мог бы предоставить больше информации, но я не знаю, что я должен предоставить GUIUtils.runSafe - это всего лишь runnable, взятый из https://codereview.stackexchange.com/questions/52197/console-component-in-javafx Фактически часть этого кода основана на том, что у него есть ...

+0

вкладка имеет Tab.getContent(); он возвращает узел – Elltz

ответ

1

Tab для узла, узла к родителю, и родители, как правило, имеют детей:

((Parent) tab.getContent()). 
    getChildrenUnmodifiable(); 
Смежные вопросы