2016-06-08 2 views
1

Я внедряю JavaFX в приложение Swing. Я пытаюсь создать таблицу, используя следующий код, а заголовки таблицы - всего лишь мусор.Проблемы с кодировкой строк JavaFX

TableView table = new TableView(); 
table.setEditable(false); 
table.getColumns().setAll(new TableColumn("Col1"), new TableColumn("Col2")); 

VBox aVBox = new VBox(); 
aVBox.setSpacing(5); 
aVBox.getChildren().add(table); 

jFXPanel.setScene(new Scene(aVBox)); 

Ниже то, что я получаю на экране: enter image description here

Кто-нибудь знает, почему я не вижу «Col1» и «col2» в качестве заголовков?

+0

Обратите внимание на исходную кодировку, используемую компилятором, и фактическую кодировку, используемую для сохранения файлов. Недостаточно информации для дальнейшего изучения этого. –

+0

Я на OSX 10.11.5 с Java 1.8.0_51. Я пробовал оба в Eclipse и использовал Maven. Кодирование моего файла - UTF-8. Когда я компилирую с помощью Maven, я устанавливаю $ {project.build.sourceEncoding} в UTF-8, и я все еще вижу проблему. Какую еще информацию вам нужно для дальнейшего расследования? – Jayfray

+0

Это должно быть хорошо, не может думать о чем-то другом. Однако попробуйте, например. записать эти символы в файл - всегда используя правильную кодировку; как они выглядят? –

ответ

1

Я выяснил, в чем проблема. Оказывается, мы настраивали свойство системы:

System.setProperty("prism.order", "j2d"); 

Был комментарий выше этого, что сказал что-то о затруднительном для JavaFX бета. Если бы я это понял, все было отображено так, как ожидалось.

Смежные вопросы