2017-02-11 13 views
0

私はスタイリングの質問があります。JavaFXノードを無効にしますが、無効にした掃除機を無効にします

私は2つの別々のペインでステージを持っています。ユーザーがペイン1にいるとき、ペイン1のすべての入力フィールドとステージのツールバーの間をタブできるはずですが、タブはペイン2に移動しません。ペイン2がペイン2のコントロールをアクティブに循環させるときと同じですツールバーが表示されますが、ペイン1は表示されません。

これを実行するには、ペイン1がアクティブになるとペイン2が無効になります。

ユーザーは、アクティブでないペインが消えていると訴えています。私は、ペインを無効にする方法があるが、現在のシェーディングを変更しない方法があるのだろうかと思っていますか?

基本的には、無効にしたペインを無効にするように設定したいと思います。

基本的に私がこれを行う方法がありますので、私は通常のもののために同じ無効なスタイリングを維持する必要があるが、この場合には、我々はMDIタイプの経験を作成するために、各ペインを使用している

setContentNodeDisabled(Boolean value) { 
    contentNode.setDisabled(value); 
    //I tried this -- But this didn't work 
    contentNode. pseudoClassStateChanged(PseudoClass.getPseudoClass("disabled"), false); 
} 

をアクティブにすることができるのは1つだけなので、ノードが無効になっていてもアクティブに見えるのが理想的です。

答えて

0

私は、次の操作を行うことができました:

setContentNodeDisabled(Boolean value) { 
    contentNode.setDisabled(value); 
    if(value && !contentNode.getStyleClass().contains("myDisabledPane")){ 
     contentNode.getStyleClass().add("myDisabledPane"); 
    } else if(!value && contentNode.getStyleClass().contains("myDisabledPane")){ 
     contentNode.getStyleClass().remove("myDisabledPane"); 
    } 

} 

には、以下のCSSを追加しました:まだ無効の表情が有効になっている間

.myDisabledPane .label:disabled, 
.myDisabledPane .button:disabled, 
.myDisabledPane .toggle-button:disabled, 
.myDisabledPane .radio-button:disabled, 
.myDisabledPane .check-box:disabled, 
.myDisabledPane .hyperlink:disabled, 
.myDisabledPane .menu-button:disabled, 
.myDisabledPane .split-menu-button:disabled, 
.myDisabledPane .slider:disabled, 
.myDisabledPane .scroll-bar:disabled, 
.myDisabledPane .scroll-pane:disabled, 
.myDisabledPane .progress-bar:disabled, 
.myDisabledPane .progress-indicator:disabled, 
.myDisabledPane .text-input:disabled, 
.myDisabledPane .choice-box:disabled, 
.myDisabledPane .combo-box-base:disabled, 
.myDisabledPane .date-cell:disabled > *, /* This is set on children so border is not affected. */ 
.myDisabledPane .list-view:disabled, 
.myDisabledPane .tree-view:disabled, 
.myDisabledPane .table-view:disabled, 
.myDisabledPane .tree-table-view:disabled, 
.myDisabledPane .tab-pane:disabled, 
.myDisabledPane .titled-pane:disabled > .title, 
.myDisabledPane .accordion:disabled > .titled-pane > .title, 
.myDisabledPane .tab-pane > .tab-header-area > .headers-region > .tab:disabled, 
.myDisabledPane .menu:disabled, 
.myDisabledPane .menu-item:disabled > .label, 
.myDisabledPane .menu-item:disabled, 
.myDisabledPane .list-cell:filled:selected:focused:disabled, 
.myDisabledPane .list-cell:filled:selected:disabled, 
.myDisabledPane .tree-cell:filled:selected:focused:disabled, 
.myDisabledPane .tree-cell:filled:selected:disabled, 
.myDisabledPane .tree-cell > .tree-disclosure-node:disabled, 
.myDisabledPane .tree-table-row-cell > .tree-disclosure-node:disabled, 
.myDisabledPane .table-row-cell:selected:disabled, 
.myDisabledPane .tree-table-row-cell:selected:disabled, 
.myDisabledPane .table-cell:selected:disabled, 
.myDisabledPane .tree-table-cell:selected:disabled, 
.myDisabledPane .spinner:disabled { 
    -fx-opacity: 1.0; 
} 

これは除いて動作しているようですが、幅広いストロークと実際の無効分野であります。

関連する問題