私は、ユーザーが間違ったパスワードまたはログインを入力するたびに、ラベルwhitchにActionListenerを追加しようとしています。 はここでどのように私はその問題を解決することができる午前私のログインコントローラJavaFxのラベルにactionListenerを追加するには
public class LoginController implements Initializable {
@FXML
private Label label;
@FXML
private TextField LoginField;
@FXML
private PasswordField PasswdField;
@FXML
private Button LogInButton;
@FXML
private Label IncorrectDataLabel;
//private String uri = "http://google.com";
@FXML
private void LogIn(ActionEvent event) throws IOException {
if(LoginField.getText().equals("MKARK")&&PasswdField.getText().equals("KACZOR1"))
{
Parent parent = FXMLLoader.load(getClass().getResource("/fxmlFiles/MainScreen.fxml"));
Scene MainScene = new Scene(parent);
Stage stage = (Stage) ((Node) event.getSource()).getScene().getWindow();
stage.setScene(MainScene);
stage.show();
}
else
{
IncorrectDataLabel.setVisible(true);
// <------------------- Here I want to bind hyperlink to a label with would open the google site, whenever user clicks it.
}
@Override
public void initialize(URL url, ResourceBundle rb) {
// TODO
}
のですか?私は何度も試してみましたが(setOnAction、addMouseListener)、何も働いていませんでした:(
私はpublic void initialize関数について質問しましたが、それは何ですか? 。事前に
おかげ
ラベルはアクションイベントを発生させないため、意味がはっきりしません。このメソッドを実行させたいと思うユーザーは実際に何をしていますか? ( 'initialize()'メソッドは '@ FXML'-annotatedフィールドが注入された後に呼び出され、コントローラを初期化するためのものです) –
このIncorrectDataLabelがポップアウトされた後、ユーザはそれをクリックできますハイパーリンクのように私が望むウェブサイトにリダイレクトされています。 – Michael
ラベルの代わりに['ハイパーリンク'](http://docs.oracle.com/javase/8/javafx/api/javafx/scene/control/Hyperlink.html)を使用してみませんか? –