我正在使用http://jdatepicker.org中的JDatePicker
。它很酷但我找不到任何方法来改变文本框和按钮的大小。 setSize()
仅更改容器的大小,如下图所示。有什么建议吗?
更新:我找到了一种方法,即使用JFormattedTextField指向datepicker文本字段的实例并调整其大小。代码如下:
UtilDateModel model = new UtilDateModel();
Properties p = new Properties();
p.put("text.today", "Today");
p.put("text.month", "Month");
p.put("text.year", "Year");
JDatePanelImpl datePanel = new JDatePanelImpl(model, p);
JDatePickerImpl dpDoB = new JDatePickerImpl(datePanel, af);
dpDoB.setPreferredSize(new Dimension(195, 45));
JFormattedTextField tf = dpDoB.getJFormattedTextField();
tf.setPreferredSize(new Dimension(195, 35));
Font font = new Font("Tahoma", 0, 16);
tf.setFont(font);
dpDoB.setShowYearButtons(false);
dpDoB.setTextEditable(true);
panelDoB.add(dpDoB);
仍有按钮无法调整大小。所以我不确定是否有其他方法可以解决这个问题
答案 0 :(得分:1)
您可以查找JDatePickerImpl的组件(此类只有两个)
尝试一下:
UtilDateModel model = new UtilDateModel();
Properties p = new Properties();
p.put("text.today", "Today");
p.put("text.month", "Month");
p.put("text.year", "Year");
JDatePanelImpl datePanel = new JDatePanelImpl(model, p);
datePicker = new JDatePickerImpl(datePanel, new DateLabelFormatter());
datePicker.setPreferredSize(new Dimension(120,20));
datePicker.getComponent(0).setPreferredSize(new Dimension(100,20)); //JFormattedTextField
datePicker.getComponent(1).setPreferredSize(new Dimension(20,20));//JButton
add(datePicker);