gpt4 book ai didi

java - 如何在 JavaFX 中将图像显示为工具提示?

转载 作者:行者123 更新时间:2023-11-30 08:36:03 25 4
gpt4 key购买 nike

我想显示一个图像作为工具提示。它工作正常,但在某些随机点显示波动。我想正常显示它而不会波动。

enter image description here

我在鼠标进入事件时显示一个新场景(我在其中添加了我的 ImageView )并在鼠标离开事件时关闭它

//  MOUSE ENTER PHOTO CORRECTIO
@FXML
private void mouseEnterPhotoCorrection(MouseEvent event) {
if (f_ShowToolTip) {
Stage stg = funShowImageTooltip();
double x, y;
x = event.getScreenX();
y = event.getScreenY();
stg.setX(x);
stg.setY(y);
stg.show();
f_ShowToolTip = false;
}
}

// MOUSE LEAVE PHOTO CORRECTIO
@FXML
private void mouseLeavePhotoCorrection(MouseEvent event) {
funHideImageTooltip();
f_ShowToolTip = true;
}

/********************************* 功能 *************** *******************/

Stage s;
boolean f_ShowToolTip;

// FUNCTION TO SET INITAL STATE OF PHOTOS AND CORRECTION
private void funInitPhotosCorrection()
{
f_ShowToolTip = true;
}

private Stage funShowImageTooltip()
{
try {
s = new Stage();

FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("frmImageToolTip.fxml"));

Parent root = (Parent) fxmlLoader.load();
Scene scene = new Scene(root);

s.setScene(scene);
s.setResizable(false);

s.initModality(Modality.WINDOW_MODAL);
s.initStyle(StageStyle.UNDECORATED);

s.setResizable(false);

double x, y;
//x = btn_Red.

s.show();

}catch(Exception e1)
{
}
return s;
}

private void funHideImageTooltip()
{
try {
s.close();
} catch (Exception e) {
}

}

enter image description here

最佳答案

如果您只是想在 Node(在您的情况下是 Button)上显示工具提示,使用 Tooltip 是合理的及其 graphicProperty而不是显示不同的 Stage

// Load the image with the needed size
Image image = new Image("...", 150, 150, true, true);

// Place it over a Button
Button button = new Button();

Tooltip tooltip = new Tooltip();
tooltip.setGraphic(new ImageView(image));

button.setTooltip(tooltip);

关于java - 如何在 JavaFX 中将图像显示为工具提示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37920558/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com