ControlsFX HiddenSidesPane隐藏单击时

时间:2016-09-08 12:17:34

标签: javafx-8 controlsfx

我正在使用ControlsFX - HiddenSidesPane我添加一些链接(ToggleButton s)以点击导航。

我遇到的问题是,无论何时点击任何内容,HiddenSiddesPane都会隐藏。

理想的行为是当点击其中的任何内容时,它不应该关闭/隐藏,除非光标悬停在它之外。

SSCCE展示不良行为

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.ListView;
import javafx.scene.control.TableView;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
import org.controlsfx.control.HiddenSidesPane;

public class MyHiddenSidesPaneDemo  extends Application{
public static void main(String[] args) { Application.launch(args); }

@Override
public void start(Stage primaryStage) throws Exception {
    VBox root = new VBox();
    TableView tv = new TableView();
    HiddenSidesPane hiddenSidesPane = new HiddenSidesPane();
    hiddenSidesPane.setContent(tv);
    hiddenSidesPane.setLeft(new ListView());
    root.getChildren().addAll(hiddenSidesPane);
    primaryStage.setTitle("HiddenSidesPane Example Demo");
    Scene scene = new Scene(root);
    primaryStage.setScene(scene);
    primaryStage.show();
}
}

1 个答案:

答案 0 :(得分:3)

尝试以下方法:

ListView listView = new ListView();
hiddenSidesPane.setLeft(listView);

listView.setOnMouseEntered(e->hiddenSidesPane.setPinnedSide(Side.LEFT)); //Keep left side pinned
listView.setOnMouseExited(e->hiddenSidesPane.setPinnedSide(null)); //unpin when mouse exits