javafx.scene.Node#setOnMouseEntered ( )源码实例Demo

下面列出了javafx.scene.Node#setOnMouseEntered ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: fxgraph   文件: CellGestures.java
private static void setUpDragging(Node node, Wrapper<Point2D> mouseLocation, Cursor hoverCursor) {
	node.setOnMouseEntered(event -> {
		node.getParent().setCursor(hoverCursor);
	});
	node.setOnMouseExited(event -> {
		node.getParent().setCursor(Cursor.DEFAULT);
	});
	node.setOnDragDetected(event -> {
		node.getParent().setCursor(Cursor.CLOSED_HAND);
		mouseLocation.value = new Point2D(event.getSceneX(), event.getSceneY());
	});

	node.setOnMouseReleased(event -> {
		node.getParent().setCursor(Cursor.DEFAULT);
		mouseLocation.value = null;
	});
}
 
源代码2 项目: DashboardFx   文件: Main.java
private void addEvents(){
    VBox drawerContent;

    for (Node node : drawer.getChildren()) { // root
        if (node instanceof ScrollPane){

            drawerContent = (VBox) ((ScrollPane) node).getContent();

            for(Node child : drawerContent.getChildren()){
                if(child instanceof Button){
                    child.setOnMouseEntered(e -> {
                        popup.setAutoHide(true);
                        if(popup.isShowing())
                            popup.hide();
                    });
                }

                else if(child instanceof TitledPane){
                    addEvent(child);
                }
            }
        }

        else {
            // for others layouts
        }
    }
}
 
private void installDataTooltip(Tooltip tooltip, Node node, LineChart.Data<?, ?> dataPoint) {
    node.setStyle("-fx-background-color: transparent;");
    node.setOnMouseEntered(e -> node.setStyle("-fx-background-color: orangered;"));
    node.setOnMouseExited(e -> node.setStyle("-fx-background-color: transparent;"));

    Tooltip.install(node, tooltip);

    dataPoint.setNode(node);
}
 
源代码4 项目: logbook-kai   文件: PopOver.java
/**
 * 指定されたノードへポップアップを設定します
 *
 * @param anchorNode アンカーノード
 * @param userData ユーザーデータ
 */
public void install(Node anchorNode, T userData) {
    anchorNode.setOnMouseEntered(this::setOnMouseEntered);
    anchorNode.setOnMouseMoved(this::setOnMouseMoved);
    anchorNode.setOnMouseExited(this::setOnMouseExited);
    this.userData.put(anchorNode, userData);
}
 
private void setOnPointEvent( XYChart.Data data )
{
    Node node = data.getNode();

    node.setOnMouseEntered( event ->
    {
        node.setCursor( Cursor.HAND );
    });

    node.setOnMouseDragged( event ->
    {
        // get pixel location
        Point2D mouseSceneCoords = new Point2D( event.getSceneX(), event.getSceneY() );
        double xLocal = axisPosX.sceneToLocal( mouseSceneCoords ).getX();
        double yLocal = axisPosY.sceneToLocal( mouseSceneCoords ).getY();

        // get location in units (ft, m, in)
        double raw_x = axisPosX.getValueForDisplay( xLocal ).doubleValue();
        double raw_y = axisPosY.getValueForDisplay( yLocal ).doubleValue();

        // round location
        double rnd_x;
        double rnd_y;

        // Snap to grid
        if( vars.getUnit() == Units.FEET )
        {
            rnd_x = Mathf.round( raw_x, 0.5 );
            rnd_y = Mathf.round( raw_y, 0.5 );
        }
        else if( vars.getUnit() == Units.METERS )
        {
            rnd_x = Mathf.round( raw_x, 0.25 );
            rnd_y = Mathf.round( raw_y, 0.25 );
        }
        else // Inches
        {
            rnd_x = Mathf.round( raw_x, 6.0 );
            rnd_y = Mathf.round( raw_y, 6.0 );
        }

        if( rnd_x >= axisPosX.getLowerBound() && rnd_x <= axisPosX.getUpperBound() )
        {

            data.setXValue( rnd_x );

        }

        if( rnd_y >= axisPosY.getLowerBound() && rnd_y <= axisPosY.getUpperBound() )
        {
            data.setYValue( rnd_y );
        }
    });

    node.setOnMouseReleased( event ->
    {
        int index = Integer.parseInt( node.getId() );

        Waypoint tmp = backend.getWaypoint( index  );
        tmp.setX( (Double) data.getXValue() );
        tmp.setY( (Double) data.getYValue() );
    });
}
 
源代码6 项目: ChatRoom-JavaFX   文件: EmojiSelectorController.java
/**
 * 创建emoji节点stackpane,并给其添加事件监听器
 * @param emoji
 * @return
 */
private Node addEmojiNodeListener(Emoji emoji) {
	// 是否需要光标设置
	Node stackPane = EmojiDisplayer.createEmojiNode(emoji, 32, 3);
	if (stackPane instanceof StackPane) {
		// 设置光标手势
		stackPane.setCursor(Cursor.HAND);
		ScaleTransition st = new ScaleTransition(Duration.millis(90), stackPane);
		// 设置提示
		Tooltip tooltip = new Tooltip(emoji.getShortname());
		Tooltip.install(stackPane, tooltip);
		// 设置光标的触发事件
		stackPane.setOnMouseEntered(e -> {
			// stackPane.setStyle("-fx-background-color: #a6a6a6;
			// -fx-background-radius: 3;");
			stackPane.setEffect(new DropShadow());
			st.setToX(1.2);
			st.setToY(1.2);
			st.playFromStart();
			if (searchTextField.getText().isEmpty())
				searchTextField.setPromptText(emoji.getShortname());
		});
		// 设置光标的离开事件
		stackPane.setOnMouseExited(e -> {
			// stackPane.setStyle("");
			stackPane.setEffect(null);
			st.setToX(1.);
			st.setToY(1.);
			st.playFromStart();
		});
		// 设置光标的点击事件
		stackPane.setOnMouseClicked(e -> {
			// 获得emoji简称
			String shortname = emoji.getShortname();
			chatController.getMessageBoxTextArea().appendText(shortname);
			// 关闭emoji选择器
			if (getLocalStage().isShowing()) {
				closeLocalStage();
			}
		});
	}
	return stackPane;
}
 
源代码7 项目: mars-sim   文件: CrewEditorFX.java
/**
 * Makes a stage draggable using a given node.
 * 
 * @param stage
 * @param byNode
 */
public void makeDraggable(final Stage stage, final Node byNode) {
	final Delta dragDelta = new Delta();
	byNode.setOnMousePressed(mouseEvent -> {
		// record a delta distance for the drag and drop operation.
		dragDelta.x = stage.getX() - mouseEvent.getScreenX();
		dragDelta.y = stage.getY() - mouseEvent.getScreenY();
		byNode.setCursor(Cursor.MOVE);
	});
	final BooleanProperty inDrag = new SimpleBooleanProperty(false);

	byNode.setOnMouseReleased(mouseEvent -> {
		byNode.setCursor(Cursor.HAND);

		if (inDrag.get()) {
			stage.hide();

			Timeline pause = new Timeline(new KeyFrame(Duration.millis(50), event -> {
				background.setImage(copyBackground(stage));
				layout.getChildren().set(0, background);

				scenarioConfigEditorFX.getMainMenu().setMonitor(stage);
				stage.show();

			}));
			pause.play();
		}

		inDrag.set(false);
	});
	byNode.setOnMouseDragged(mouseEvent -> {
		stage.setX(mouseEvent.getScreenX() + dragDelta.x);
		stage.setY(mouseEvent.getScreenY() + dragDelta.y);

		layout.getChildren().set(0, makeSmoke(stage));

		inDrag.set(true);
	});
	byNode.setOnMouseEntered(mouseEvent -> {
		if (!mouseEvent.isPrimaryButtonDown()) {
			byNode.setCursor(Cursor.HAND);
		}
	});
	byNode.setOnMouseExited(mouseEvent -> {
		if (!mouseEvent.isPrimaryButtonDown()) {
			byNode.setCursor(Cursor.DEFAULT);
		}
	});
}
 
源代码8 项目: mars-sim   文件: FrostyTech.java
public void makeDraggable(final Stage stage, final Node byNode) {
    final Delta dragDelta = new Delta();
    byNode.setOnMousePressed(mouseEvent -> {
        // record a delta distance for the drag and drop operation.
        dragDelta.x = stage.getX() - mouseEvent.getScreenX();
        dragDelta.y = stage.getY() - mouseEvent.getScreenY();
        byNode.setCursor(Cursor.MOVE);
    });
    final BooleanProperty inDrag = new SimpleBooleanProperty(false);

    byNode.setOnMouseReleased(mouseEvent -> {
        byNode.setCursor(Cursor.HAND);

        if (inDrag.get()) {
            stage.hide();

            Timeline pause = new Timeline(new KeyFrame(Duration.millis(50), event -> {
                background.setImage(copyBackground(stage));
                layout.getChildren().set(
                        0,
                        background
                );
                stage.show();
            }));
            pause.play();
        }

        inDrag.set(false);
    });
    byNode.setOnMouseDragged(mouseEvent -> {
        stage.setX(mouseEvent.getScreenX() + dragDelta.x);
        stage.setY(mouseEvent.getScreenY() + dragDelta.y);

        layout.getChildren().set(
                0,
                makeSmoke(stage)
        );

        inDrag.set(true);
    });
    byNode.setOnMouseEntered(mouseEvent -> {
        if (!mouseEvent.isPrimaryButtonDown()) {
            byNode.setCursor(Cursor.HAND);
        }
    });
    byNode.setOnMouseExited(mouseEvent -> {
        if (!mouseEvent.isPrimaryButtonDown()) {
            byNode.setCursor(Cursor.DEFAULT);
        }
    });
}
 
源代码9 项目: HubTurbo   文件: PickerLabel.java
private void setupEvents(Node node) {
    node.setOnMouseEntered(e -> node.getScene().setCursor(Cursor.HAND));
    node.setOnMouseExited(e -> node.getScene().setCursor(Cursor.DEFAULT));
}