Я прочитал JEditorPane Docs, из чего я могу понять, вам просто нужно editorpane.setText (String value); однако я совершенно новый для java, и это решение не работает с моим кодом. Я думаю, что мне не хватает чего-то очевидного, но полностью из идей.JEditorPane - setText from ArrayList <String> содержание?
Я создал новую вкладку с этим классом, которая расширяет JEditorPane, этот класс предназначен для того, чтобы открыть содержимое файла, поместить его в массив, отменить массив (так что последняя запись находится сверху), а затем отобразить это список в JEditorPane (с использованием JEditorPane, потому что мне нужно сделать сохранить URLы, в гиперссылок),
public class HistoryPane extends JEditorPane{
ArrayList<String> historyToSort = new ArrayList<String>();
public HistoryPane(){
setEditable(false);
historySort();
}
public void historySort() {
try (BufferedReader reader = new BufferedReader(new FileReader("BrowserHistory.txt")))
{
String currentLine;
String newLine = new String("\n");
while ((currentLine = reader.readLine()) != null) {
historyToSort.add(currentLine + newLine);
}
} catch (IOException e) {
e.printStackTrace();
}
Collections.reverse(historyToSort);
System.out.println(historyToSort);
}
{
}
private void displayHistory(){
String sorted = historyToSort.toString();
***** HistoryPane.setText(String sorted); <<<------ PROBLEM SYNTAX.*****
}
}
Я попробовал несколько различных записей в SetText() круглые скобки, не повезло. Что мне не хватает? Спасибо.
Примечание:
Этот класс не будет компилироваться, так как это зависит от другого класса (я не могу вставить все это), но этот код находится в пределах вкладок панели, созданной мой основной класс:
сообщениеОшибка:
Exception in thread "AWT-EventQueue-0" java.lang.Error: Unresolved compilation problems: Syntax error on token "setText", Identifier expected after this token Return type for the method is missing This method requires a body instead of a semicolon
Что не работает? Что вы ожидаете от этого кода, и что он делает? –
Где вы называете 'setText()'? – ApproachingDarknessFish
Извинения, я ожидал, что код отобразит мой массив (строки истории из файла) на экране в панели редактора. Я называю это в самом низу «HistoryPane.setText (String sorted)»; или так я думал .... Я думал, что установит текст, отображаемый на JEditorPane. Проблема в том, что я получаю ошибки из среды IDE, которые просто не принимают STRING и значение в setText() ...он просто предлагает предложения, ни одна из которых не является действительной. –