JavaFX : 텍스트 영역을 참조하여 텍스트 영역이있는 탭을 어떻게 선택할 수 있습니까?

65535

JavaFX : 텍스트 영역을 참조하여 텍스트 영역이있는 탭을 어떻게 선택할 수 있습니까?

어떤 도움이라도 대단히 감사하겠습니다, 감사합니다!

파비안

Node스타일 클래스 tab-content-area가 부모 인 노드 를 찾을 때까지 노드 계층 구조를 통해 올라갈 수 있습니다. 이것은의 콘텐츠 노드입니다 Tab. 이 정보를 바탕으로 적절한 것을 찾을 수 있습니다 Tab.

public static Tab findTab(Node node, TabPane tabPane) {
    if (tabPane == null) {
        throw new IllegalArgumentException();
    }

    // find content node that contains node
    Node parent = node.getParent();
    while (parent != null && !parent.getStyleClass().contains("tab-content-area")) {
        node = parent;
        parent = node.getParent();
    }

    // root reached before reaching the content of a tab
    if (parent == null) {
        return null;
    }

    // find appropriate tab 
    for (Tab tab : tabPane.getTabs()) {
        if (tab.getContent() == node) {
            return tab;
        }
    }
    return null;
}

@Override
public void start(Stage primaryStage) {
    TabPane tabPane = new TabPane();
    TextArea textArea1 = new TextArea();
    TextArea textArea2 = new TextArea();

    Tab tab1 = new Tab("tab1", textArea1);

    // wrap some parent to show this is working too
    Tab tab2 = new Tab("tab2", new StackPane(textArea2));
    tabPane.getTabs().addAll(tab1, tab2);

    ChangeListener<String> textChangeListener = (observable, oldValue, newValue) -> {
        // get node containing the property
        Node sourceNode = (Node) ((ReadOnlyProperty) observable).getBean();

        // find corresponging tab and select it
        Tab tab = findTab(sourceNode, tabPane);
        if (tab != null) {
            tabPane.getSelectionModel().select(tab);
        }
    };
    textArea1.textProperty().addListener(textChangeListener);
    textArea2.textProperty().addListener(textChangeListener);

    // add some text to the text areas alternatingly
    Timeline timeline = new Timeline(new KeyFrame(Duration.seconds(2), new EventHandler<ActionEvent>() {

        private int num = 1;

        @Override
        public void handle(ActionEvent event) {
            textArea1.appendText("\n" + num);
            num += 2;
        }
    }), new KeyFrame(Duration.seconds(4), new EventHandler<ActionEvent>() {

        private int num;

        @Override
        public void handle(ActionEvent event) {
            textArea2.appendText("\n" + num);
            num += 2;
        }
    }));
    timeline.setCycleCount(Animation.INDEFINITE);
    timeline.play();

    Scene scene = new Scene(tabPane);

    primaryStage.setScene(scene);
    primaryStage.show();
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

텍스트 영역이있는 모든 td 공간을 어떻게 사용할 수 있습니까?

분류에서Dev

항상 크기가 조정되는 텍스트 영역을 어떻게 만들 수 있습니까?

분류에서Dev

텍스트 영역의 값을 어떻게 얻을 수 있습니까?

분류에서Dev

텍스트 영역의 값에서 .txt 파일을 어떻게 저장할 수 있습니까?

분류에서Dev

텍스트 영역 값을 JavaScript 코드로 어떻게 실행할 수 있습니까?

분류에서Dev

여러 입력 상자의 값을 다른 단일 입력 또는 텍스트 영역에 어떻게 전달할 수 있습니까?

분류에서Dev

JavaFX 스택 영역 차트에서 범위를 어떻게 조정할 수 있습니까?

분류에서Dev

텍스트 영역 여백이 어디에 있는지 찾을 수 없습니다.

분류에서Dev

기존 d3 영역을 스택 영역으로 어떻게 변환 할 수 있습니까?

분류에서Dev

사람들이 자신의 글꼴 등을 변경할 수있는 HTML 텍스트 영역을 어떻게 프로그래밍합니까?

분류에서Dev

텍스트 영역에서 텍스트 선택을 지울 수 없습니다.

분류에서Dev

asp.net의 dropdowncheckboxes 텍스트 영역에 선택한 항목을 표시 할 수 있습니까?

분류에서Dev

파이썬으로 브라우저의 텍스트 영역에 문자열을 어떻게 붙여 넣을 수 있습니까?

분류에서Dev

WPML을 사용하여 javascript로 된 html 텍스트를 어떻게 번역 할 수 있습니까?

분류에서Dev

ggplot을 사용하여 영역 플롯을 스택에 어떻게 가져올 수 있습니까?

분류에서Dev

텍스트 파일을 업데이트하는 스크립트를 어떻게 작성할 수 있습니까?

분류에서Dev

입력 및 텍스트 영역을 드래그 할 수 있습니까?

분류에서Dev

자바 스크립트를 사용하여 텍스트 영역 값이 변경 될 때 어떻게 감지 할 수 있습니까?

분류에서Dev

텍스트 영역에서 특정 입력 유형 이벤트를 시작하는 방법에 대한 정보는 어디에서 찾을 수 있습니까?

분류에서Dev

선택한 여러 영역을 복사하여 붙여 넣을 수있는 스크립트 또는 Excel을 수정하는 방법이 있습니까?

분류에서Dev

더블 클릭으로 선택되는 텍스트의 양을 어떻게 제어 할 수 있습니까?

분류에서Dev

텍스트 영역을 안전하게 살균하고 있습니까?

분류에서Dev

특정 선택과 관련하여 각 'li'및 'a'요소 텍스트를 어떻게 얻을 수 있습니까?

분류에서Dev

참조로 텍스트 입력의 텍스트 / 값을 어떻게 얻을 수 있습니까?

분류에서Dev

e.Graphics가 그릴 영역 (뷰포트)을 어떻게 조정할 수 있습니까?

분류에서Dev

텍스트 상자 또는 텍스트 영역의 입력 언어를 설정할 수 있습니까?

분류에서Dev

React Native의 안전 영역에서 항목의 텍스트 색상을 어떻게 변경할 수 있습니까?

분류에서Dev

동일한 텍스트 영역 변수에 어떻게 액세스 할 수 있습니까?

분류에서Dev

선택한 값을 텍스트 필드에 어떻게 표시 할 수 있습니까?

Related 관련 기사

  1. 1

    텍스트 영역이있는 모든 td 공간을 어떻게 사용할 수 있습니까?

  2. 2

    항상 크기가 조정되는 텍스트 영역을 어떻게 만들 수 있습니까?

  3. 3

    텍스트 영역의 값을 어떻게 얻을 수 있습니까?

  4. 4

    텍스트 영역의 값에서 .txt 파일을 어떻게 저장할 수 있습니까?

  5. 5

    텍스트 영역 값을 JavaScript 코드로 어떻게 실행할 수 있습니까?

  6. 6

    여러 입력 상자의 값을 다른 단일 입력 또는 텍스트 영역에 어떻게 전달할 수 있습니까?

  7. 7

    JavaFX 스택 영역 차트에서 범위를 어떻게 조정할 수 있습니까?

  8. 8

    텍스트 영역 여백이 어디에 있는지 찾을 수 없습니다.

  9. 9

    기존 d3 영역을 스택 영역으로 어떻게 변환 할 수 있습니까?

  10. 10

    사람들이 자신의 글꼴 등을 변경할 수있는 HTML 텍스트 영역을 어떻게 프로그래밍합니까?

  11. 11

    텍스트 영역에서 텍스트 선택을 지울 수 없습니다.

  12. 12

    asp.net의 dropdowncheckboxes 텍스트 영역에 선택한 항목을 표시 할 수 있습니까?

  13. 13

    파이썬으로 브라우저의 텍스트 영역에 문자열을 어떻게 붙여 넣을 수 있습니까?

  14. 14

    WPML을 사용하여 javascript로 된 html 텍스트를 어떻게 번역 할 수 있습니까?

  15. 15

    ggplot을 사용하여 영역 플롯을 스택에 어떻게 가져올 수 있습니까?

  16. 16

    텍스트 파일을 업데이트하는 스크립트를 어떻게 작성할 수 있습니까?

  17. 17

    입력 및 텍스트 영역을 드래그 할 수 있습니까?

  18. 18

    자바 스크립트를 사용하여 텍스트 영역 값이 변경 될 때 어떻게 감지 할 수 있습니까?

  19. 19

    텍스트 영역에서 특정 입력 유형 이벤트를 시작하는 방법에 대한 정보는 어디에서 찾을 수 있습니까?

  20. 20

    선택한 여러 영역을 복사하여 붙여 넣을 수있는 스크립트 또는 Excel을 수정하는 방법이 있습니까?

  21. 21

    더블 클릭으로 선택되는 텍스트의 양을 어떻게 제어 할 수 있습니까?

  22. 22

    텍스트 영역을 안전하게 살균하고 있습니까?

  23. 23

    특정 선택과 관련하여 각 'li'및 'a'요소 텍스트를 어떻게 얻을 수 있습니까?

  24. 24

    참조로 텍스트 입력의 텍스트 / 값을 어떻게 얻을 수 있습니까?

  25. 25

    e.Graphics가 그릴 영역 (뷰포트)을 어떻게 조정할 수 있습니까?

  26. 26

    텍스트 상자 또는 텍스트 영역의 입력 언어를 설정할 수 있습니까?

  27. 27

    React Native의 안전 영역에서 항목의 텍스트 색상을 어떻게 변경할 수 있습니까?

  28. 28

    동일한 텍스트 영역 변수에 어떻게 액세스 할 수 있습니까?

  29. 29

    선택한 값을 텍스트 필드에 어떻게 표시 할 수 있습니까?

뜨겁다태그

보관