我正在尝试找到一种将图像添加到JavaFx TableView列的方法,该图像具有通过休眠从H2数据库填充的其他列中的数据。TableView是在JavaFx Scene Builder中设计的。
到目前为止,这是我设法做到的:
控制器类:
public class HomeController implements Initializable {
@FXML
private TableView<NewBeautifulKiwi> KIWI_TABLE;
@FXML
private TableColumn<NewBeautifulKiwi, Image> KiwiId;
@FXML
private TableColumn<NewBeautifulKiwi, String> Kiwi;
public ObservableList<NewBeautifulKiwi> data;
// Initializes the controller class.
@Override
public void initialize(URL url, ResourceBundle rb) {
KiwiId.setCellFactory(new Callback<TableColumn<NewBeautifulKiwi, Image>, TableCell<NewBeautifulKiwi, Image>>() {
@Override
public TableCell<NewBeautifulKiwi, Image> call(TableColumn<NewBeautifulKiwi, Image> param) {
//Set up the ImageView
final ImageView imageview = new ImageView();
imageview.setFitHeight(50);
imageview.setFitWidth(50);
//Set up the Table
TableCell<NewBeautifulKiwi, Image> cell = new TableCell<NewBeautifulKiwi, Image>() { …Run Code Online (Sandbox Code Playgroud) 我有一个JavaFx TableView,每一行都有一个带有删除按钮的列,当点击它时应删除TableRow,以及 通过Hibernate 删除H2数据库中的相应条目.
到目前为止,我没有得到任何东西.按钮点击没有任何反应.即使我手动分配项主键,如下所示:
NewBeautifulKiwi toDelete = (NewBeautifulKiwi) session.get(NewBeautifulKiwi.class, 97);
Run Code Online (Sandbox Code Playgroud)
请帮我做这个工作; 按钮单击以删除它所属的TableRow以及填充该特定TableRow的数据库项.到目前为止,ButtonClick上根本没有任何事情发生.
先感谢您.
PS.
这些按钮也会打印在列为空的位置.如果你帮助我解决这个问题并且只有行数据上的按钮,这也会有所帮助
课程提取:
public class HomeController implements Initializable {
@FXML
public static TableView<NewBeautifulKiwi> KIWI_TABLE;
@FXML
private TableColumn<NewBeautifulKiwi, Object> KiwiAction;
// Initializes the controller class.
@Override
public void initialize(URL url, ResourceBundle rb) {
KiwiAction.setCellValueFactory(new PropertyValueFactory<NewBeautifulKiwi, Object>("KiwiAction"));
KiwiAction.setCellFactory(new Callback<TableColumn<NewBeautifulKiwi, Object>, TableCell<NewBeautifulKiwi, Object>>() {
@Override
public TableCell<NewBeautifulKiwi, Object> call(TableColumn<NewBeautifulKiwi, Object> param) {
final Button button;
Image image = new Image(getClass().getResourceAsStream("/MediaTools/Error.png"));
final ImageView imageView = …Run Code Online (Sandbox Code Playgroud) 当我从数据库中检索保存的数据时,我得到如下信息:
java.util.GregorianCalendar[time=1401785940000,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="America/Los_Angeles",offset=-28800000,dstSavings=3600000,useDaylight=true,transitions=185,lastRule=java.util.SimpleTimeZone[id=America/Los_Angeles,offset=-28800000,dstSavings=3600000,useDaylight=true,startYear=0,startMode=3,startMonth=2,startDay=8,startDayOfWeek=1,startTime=7200000,startTimeMode=0,endMode=3,endMonth=10,endDay=1,endDayOfWeek=1,endTime=7200000,endTimeMode=0]],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2014,MONTH=5,WEEK_OF_YEAR=23,WEEK_OF_MONTH=1,DAY_OF_MONTH=3,DAY_OF_YEAR=154,DAY_OF_WEEK=3,DAY_OF_WEEK_IN_MONTH=1,AM_PM=0,HOUR=1,HOUR_OF_DAY=1,MINUTE=59,SECOND=0,MILLISECOND=0,ZONE_OFFSET=-28800000,DST_OFFSET=3600000]
Run Code Online (Sandbox Code Playgroud)
我怎样才能得到一个更易读的形式,比如10.22.2014?