В конце я постараюсь решить вашу проблему, но, пожалуйста, сначала прочтите эту часть, потому что это гораздо важнее для вас, чем фактический ответ. Я считаю, что ваши навыки программирования (на данный момент) не требуются для того, что вы пытаетесь выполнить sh, особенно потому, что вы конвертируете свой класс в строку, прежде чем добавлять его к своим данным (которые, похоже, представляют собой набор string, а не набор Notes), поэтому я не знаю, как вы ожидаете, что tableview получит ваш идентификатор, заголовок и описание. Кроме того, у вас есть конструктор для Notes, но вы слишком усложняете его, не используя его и присваивая значения позже. С другой стороны, функция getNotes () никогда не вызывается в вашем коде, вероятно, вызывается в какой-то другой части, которую вы не показываете.
Из-за этого, я думаю, вам следует немного замедлить, попробуйте выровняйте свои базовые c навыки (особенно работая с классами и коллекциями), они читают руководство по tornadofx и пробуют с такими вещами.
Теперь это мое решение. Сначала попробуйте это без базы данных. Я сделал это так, потому что не знаю, есть ли проблемы с вашей базой данных. Они изменяют функцию getNotes () так, как указано в вашем коде, без преобразования notes.toString (), просто de data.add (notes). Не забудьте нажать кнопку, чтобы загрузить данные.
class Prueba: View("MainView") {
//data should be an FXCollections.observableArrayList<Notes>
//You didn't show your data variable type, but apparently is some collection of string
val data = FXCollections.observableArrayList<Notes>()
override val root = vbox {
tableview(data){
prefWidth = 400.0
column("ID", Notes::getId)
column("Title", Notes::getTitle)
rowExpander() {
label() {
//Note the difference here, Notes::getDescription.toString() won't do what you want
this.text = it.getDescription()
}
}
}
//This button is calling the function getNotes(), so data can be loaded
button("Load Data") {
action {
getNotes()
}
}
}
//Note this function is out side root now
private fun getNotes() {
data.clear()
data.add(Notes(1,"Title 1", "Description 1"))
data.add(Notes(2,"Title 2", "Description 2"))
data.add(Notes(3,"Title 3", "Description 3"))
}
}