【发布时间】:2020-06-29 09:48:34
【问题描述】:
我想在日期选择器字段中自动设置今天/实际日期。我查看了几个关于此的 Stackoverflow 主题,但找不到完成此操作的方法。我不想用system.out.println(); 输出日期,但我只想将它保存到数据库(MSSQL)。因此,例如,让我向您展示我的意思的照片,如果您对代码有任何疑问,我可以将其发送到这里,但是由于我不知道放在这里的代码对您有帮助,所以我将其留空。
提前谢谢您!
public String getDateToString(Date d) {
DateFormat da = new SimpleDateFormat("dd-MM-yyyy");
return da.format(d);
}
private void tabelaSelectedIndexChange() {
final ListSelectionModel rowSM = table.getSelectionModel();
rowSM.addListSelectionListener(new ListSelectionListener() {
@Override
public void valueChanged(ListSelectionEvent e) {
if (e.getValueIsAdjusting()) {
return;
}
ListSelectionModel rowSM = (ListSelectionModel) e.getSource();
int selectedIndex = rowSM.getAnchorSelectionIndex();
if (selectedIndex > -1) {
Feedback f = ftm.getFeedback(selectedIndex);
//idField.setText(p.getId().toString());
arsyejaArea.setText(f.getArsyeja());
dateChooser.setDate(f.getData());
rcmb.setSelectedItem(f.getRecetaID());
recetaCMB.repaint();
}
}
});
}
private void saveBtnActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
try {
int row = table.getSelectedRow();
if (arsyejaArea.getText().trim().isEmpty() || recetaCMB.getSelectedItem() == null || dateChooser.getDate() == null) {
JOptionPane.showMessageDialog(this, "Nuk i keni mbushur te gjitha hapesirat!");
} else if (row == -1) {
Feedback f = new Feedback();
//p.setId(Integer.parseInt(idField.getText()));
f.setArsyeja(arsyejaArea.getText());
f.setData(dateChooser.getDate());
f.setRecetaID((Receta) rcmb.getSelectedItem());
fr.create(f);
} else {
Feedback f = ftm.getFeedback(row);
//Id nuk e lejojm me ndryshu vetem emertimin ose fielda tjere qe mundeni me pas
f.setArsyeja(arsyejaArea.getText());
f.setData(dateChooser.getDate());
f.setRecetaID((Receta) rcmb.getSelectedItem());
fr.edit(f);
}
//E krijojm ni metode per me i clear fieldat mbasi ti shtojme
clear();
loadTable();
} catch (CrudFormException ex) {
JOptionPane.showMessageDialog(this, "E dhena ekziston!");
}
}
【问题讨论】:
-
你的问题有点令人困惑,因为首先你说你想在 UI 中显示当前日期和时间,但你说你只是想把它保存到数据库中。这里有什么问题?获取日期,将其打印到 UI 或将其保存到数据库?如果它正在获取日期,调用方法
LocalDateTime.now()将返回一个对象LocalDateTime,格式为“yyyy-MM-dd+T+HH:mm:ss.ms”,您可能希望使用DateTimeFormatter对其进行格式化. -
@yur 所以问题是我无法让日期显示在 dateChooser 中,如您在上面看到的(数据)。 dateChooser 字段为空,所以我只想在有人打开此表单时显示实际的 PC 时间。我希望这能说清楚。
-
您的“dateChooser”使用的是什么组件?一个简单的 JTextField 或更复杂的东西,比如 JCalendar?
-
“如果您对代码有任何疑问” 是的。你的minimal reproducible example 是什么?这将告诉我 20 件我懒得问的事情。
-
顺便说一句 - 从那时起,我决定了解do in a
JSpinner是多么容易。 (检查手表)很容易..
标签: java swing mssql-jdbc jdatechooser jcalendar