私はJavaFXを練習するための簡単な料理ブックアプリを作っています。問題にぶつかっています。私はこのクラスをインポートするように見えることはできません。カスタムクラスをこのFXMLファイルに正しくインポートするにはどうすればよいですか?
package application;
import javafx.beans.property.SimpleStringProperty;
public class Recipe {
private final SimpleStringProperty Name = new SimpleStringProperty("");
public Recipe() {
this("");
}
public Recipe(String recipeName) {
setRecipeName(recipeName);
}
public String getRecipeName() {
return Name.get();
}
public void setRecipeName(String rName) {
Name.set(rName);
}
}
このFXMLビューファイルに:
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.TableColumn?>
<?import javafx.scene.control.TableView?>
<?import javafx.scene.layout.AnchorPane?>
<?import javafx.scene.control.cell.*?>
<?import javafx.collections.*?>
<?import fxmltableview.*?>
<?import java.lang.String?>
<?import application.Recipe ?>
<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1">
<children>
<TableView prefHeight="400.0" prefWidth="600.0">
<columns>
<TableColumn prefWidth="599.0" text="Column One" >
<cellValueFactory><PropertyValueFactory property="Name" />
</cellValueFactory>
</TableColumn>
</columns>
<items>
<FXCollections fx:factory="observableArrayList">
<Recipe Name="Test Name"/>
</FXCollections>
</items>
</TableView>
</children>
</AnchorPane>
私はライン上のエラーを取得しておきます。どんな助けでも大歓迎です。
こんにちは、 私はそれがあなたの問題を修正した場合(私はないと思う、SRY)、知っているが、あなたの変数を命名していない「名前」(最初の文字大文字)が悪いと考えられていますコンパイラによって誤解される可能性があります。 (少なくとも私が知っている限り...) – GoatyGuy
ええ、それは本当に私を助けてくれませんでしたが、あなたは正しいと私はrecipeNameに変更しました。これはより明確ですが、それは機能する。編集:それは命名規則ではありませんでした。名前は明らかに何かの予約フィールドを参照していますが、わかりませんが、今は動作します。 – JLH