Я получаю сообщение об ошибке Метод setPromptText (String) не определен для типа TextField - PullRequest
0 голосов
/ 20 сентября 2018

Так что я не могу найти ничего о том, почему eclipse не распознает функцию "setPromptText".Он спрашивает меня, хочу ли я создать метод setPromptText:

import javafx.application.*;
import javafx.scene.*;
import javafx.stage.*;
import javafx.scene.layout.*;
import javafx.scene.control.*;
import javafx.event.*;
import javafx.geometry.*;

public class TextField extends Application {

    TextField tf;
    Label response;

    public static void main(String [] args) {
        launch(args);

    }

    public void start(Stage myStage) {
        myStage.setTitle("Demonstrate a textfield");
        FlowPane rootNode = new FlowPane(10,10);
        rootNode.setAlignment(Pos.CENTER);
        Scene myScene = new Scene(rootNode, 230, 140);
        myStage.setScene(myScene);
        response = new Label("Enter Name: ");
        Button btnGetText = new Button("Get Name");
        tf = new TextField();

        tf.setPromptText("Enter a name.");

    }


}

Ответы [ 2 ]

0 голосов
/ 20 сентября 2018

Это потому, что ваше имя класса также TextField.

import javafx.application.*;
import javafx.scene.*;
import javafx.stage.*;
import javafx.scene.layout.*;
import javafx.scene.control.*;
import javafx.event.*;
import javafx.geometry.*;

public class TextField extends Application {

    javafx.scene.control.TextField tf;
    Label response;

    public static void main(String [] args) {
        launch(args);

    }

    public void start(Stage myStage) {
        myStage.setTitle("Demonstrate a textfield");
        FlowPane rootNode = new FlowPane(10,10);
        rootNode.setAlignment(Pos.CENTER);
        Scene myScene = new Scene(rootNode, 230, 140);
        myStage.setScene(myScene);
        response = new Label("Enter Name: ");
        Button btnGetText = new Button("Get Name");
        tf = new javafx.scene.control.TextField();

        tf.setPromptText("Enter a name.");

    }
}

этот код работает

0 голосов
/ 20 сентября 2018

Вам нужно либо изменить имя вашего класса,

, либо вы можете указать пакет в объявлении new Textfield().

EG изменить соответствующую строку на:

tf = new javafx.scene.control.TextField();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...