添加我自己的TextFiled后,场景构建器无法打开

时间:2016-08-13 03:58:56

标签: java eclipse javafx scenebuilder

我的问题是关于从eclipse打开场景构建器。 我想显示一个只接受数字的文本字段,我找到了一个很好的方法来实现它,扩展文本字段的类和覆盖方法“用3参数替换文本”,条件。 在我的控制器类创建对象并通过传递ID将其添加到布局FXML文件之后。

当我将TextField中的标签从TextField更改为NumberTextField后,我运行app并且工作正常。当我使用Eclipse并按场景构建器打开布局时,除非我将标记从NumberTextField更改为TextField,否则它将无法打开。

这里是我的班级NumberTextField& FXML文件中包含标记的部分。

类:

package application;

import javafx.scene.control.TextField;

public class NumberTextField extends TextField{

   public NumberTextField() {
       this.setPromptText("Enter the value");
   }

   @Override
   public void replaceText(int start, int end, String text) {
      if(text.matches("[0-9]")|| text.isEmpty()){
         super.replaceText(start, end, text);
      }
   }
}

FXML:

 <NumberTextField  fx:id="fromTextField" prefWidth="170.0" GridPane.rowIndex="2" />
  <NumberTextField  fx:id="toTextField" disable="true" prefWidth="170.0" promptText="Value" GridPane.columnIndex="1" GridPane.rowIndex="2" />

请注意:我在FXML中为NumberTextFiled进行了第一次导入。 很抱歉很多话。 请帮我 !!!!!! 祝你有个美好的一天。

Edite: 这是我得到的错误消息。 enter image description here enter image description here

这是自定义componentNumberTextField enter image description here

0 个答案:

没有答案
相关问题