Код ниже - это методы экземпляра объекта.javafx: прикрепите ChoiceBox к TableCell на TableColumn во время редактирования
private StringProperty buySell;
// getters
public String getBuySell(){
return this.buySell.get();
}
// return Property Object
public StringProperty buySellProperty(){
return this.buySell;
}
// setters
public void setBuySell(String buySell){
this.buySell.set(buySell);
}
В моем Controller
классе, я создал TableColumn
для buySell
строкового свойства с кодом ниже.
Когда я создал транзакцию, на tableView
будет новая строка. Тем не менее, я хочу быть , способным редактировать таблицу buySellCell.
Вопрос: Как я могу встроить choicebox
со значениями buy
, sell
в функции setOnEdit
таким образом, что, когда я дважды щелкните на ячейке, это даст мне choicebox?
У меня есть код choicebox
, но я понятия не имею, как объединить эти вещи вместе.
ChoiceBox<BuySell> buySellBox = new ChoiceBox<>();
buySellBox.getItems().addAll("Buy", "Sell");
Update: проблема все еще не решена. Однако, следуя ответу в этом post, это то, что я получил до сих пор. После создания объекта создается строка таблицы, но когда я нажимаю на ячейку таблицы Buy
на , редактирую, ничего не происходит (я ожидал, что появится окно выбора вниз, и позвольте мне выбрать мой выбор).
Моя таблица доступна для редактирования, так как я могу редактировать tableCell используя Volume
с использованием приведенного выше кода.
Добавлен на изображения ниже, чтобы показать, что я могу редактировать tableCell Volume
, но не таблицу tableClell , всякий раз, когда я нажимаю на нее.
опубликовать полный код вашего класса контроллера. – Kachna
Я думаю, что 'XXX.setOnEditCommit()' не нужно. – Kachna
Извините, я хотел опубликовать весь класс контроллера, но здесь слишком длинный путь для публикации. Из-за ненужного, вы имеете в виду, я должен избавиться от него? – mynameisJEFF