tooltip - JavaFX:工具提示 - 根本无法显示工具提示

标签 tooltip javafx

我正在进行一个项目,我应该使用 JavaFX 2.0 编写一个登录系统。 现在我正在尝试编写一个与密码字段连接的工具提示,但工具提示根本不会显示。我正在使用“javafx-samples-2.0.3”中的 FXML-LoginDemo 项目。然后我尝试使用:http://docs.oracle.com/javafx/2.0/ui_controls/tooltip.htm#BABHCHGG示例19.1。

如果您需要更多代码来查看此问题,请这么说..因为我真的不知道问题出在哪里..

这是我到目前为止的代码:

package demo;

import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.scene.control.PasswordField;
import javafx.scene.control.TextField;
import javafx.scene.control.Label;
import javafx.scene.control.Tooltip;

/**
 * Login Controller.
 */
public class LoginController {
    @FXML private TextField userId;
    @FXML private PasswordField password;
    @FXML private Label errorMessage;
    @FXML final Tooltip tooltip = new Tooltip();

    @FXML protected void processLogin(ActionEvent event) {


        tooltip.setText("\nYour password must be\n at least 8 characters in length\n");
        password.setTooltip(tooltip);

        if(!App.getInstance().userLogging(userId.getText(), password.getText())){
            errorMessage.setText("Invalid username or password: " + userId.getText());
        }
        //Replaces inputed password with an empty String.
        password.setText("");
    }
}

最佳答案

定义 initialize method在 Controller 上,并在该方法中设置工具提示文本并将工具提示与密码字段相关联。如果等到调用 processLogin 操作来设置 Tooltip,则场景已经显示并且用户已经尝试登录。

此外,您不需要将 @FXML 注释放在工具提示前面,除非您在 FXML 中定义工具提示属性,在这种情况下可能没有必要。

关于tooltip - JavaFX:工具提示 - 根本无法显示工具提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9788502/

相关文章:

html - 如何在工具提示中添加图片和文字?

java - 有没有办法摆脱我得到的这个空指针异常?

javafx - 单击时更改 javafx 按钮颜色?

java - 任务 ':dex'的执行失败

asynchronous - JavaFX 显示加载对话框以进行更长时间的操作

java - 如何使用对象将数据添加到 JavaFX 中的空 TableView 中?

winapi - 如何随意隐藏任务栏气球?

javascript - jQuery 工具工具提示不能简单地通过位置为 : relative? 的外部 div 来工作

c# - Wpf:在多个控件上应用自定义样式的工具提示

java - 当值保持不变时,向 ComboBox 添加更改监听器