2013-04-15 6 views

Antwort

4

Das gleiche passiert mit einer ListView oder ComboBox. Aber ich denke, dass Sie in der FXML-Datei die Steuerelemente definieren und ein generisches ListView oder ein ComboBox oder TableView oder was auch immer definieren. Egal was sie zeigen werden.

Für mich ist es sinnvoller, den generischen Typ in der JavaFX-Controller-Klasse anstatt in der FXML-Datei zu setzen.

Ich hoffe, es hilft.

+0

Vielen Dank Antonio, ich habe auch gerade gesehen, dass Sie dies im Controller setzen :-) Also ich denke, der FXML-Parser betrachtet zuerst die Controller-Klasse, bevor er das TableView instanziiert und den generischen Typ von dort übernimmt. Würde Sinn machen :-) –

+0

Gut zu sehen es hilft dir. Glückliche Kodierung! :-) –

3

FXML wird zur Laufzeit dynamisch geladen. Da generische Typen zum Zeitpunkt der Kompilierung gelöscht werden, ist es nicht sinnvoll, sie im Markup zu definieren. Das Definieren des Generic in der Controller-Klasse ist korrekt.

0

Normalerweise würde ich mit den Antworten stimmen hier, aber wenn Sie Scene Builder verwenden, um Ihre GUIs zu entwickeln und dann wollen die Skelett-Controller Teile in den Code für die Updates importieren Sie haben es wirklich ärgerlich ist zu haben, sich zu erinnern zurückgehen und alle [?] und [?,?] durch die tatsächlichen Klassennamen ersetzen. Es wäre nett, wenn Sie entweder die FXML-Spezifikation oder den Szenen-Builder dazu verwenden würden, die Vorlagenklassen anzugeben.

+0

Dies liefert keine Antwort auf die Frage und stattdessen ist es hauptsächlich auf der Meinung basiert. Ich empfehle Ihnen, [Wie schreibe ich eine gute Antwort?] (Http://stackoverflow.com/help/how-to-answer). – RobC