我想个性化JXDatePicker。更具体地说,我想在自己的位置上创建自己的动作按钮。我试图提取包含的JButton,但是当我尝试将其添加到任何JPanel时,它只会添加空白空间。
JXDatePicker fDate = new JXDatePicker(new Date());
fDate.getEditor().setBorder(null);
fDate.getEditor().setEditable(false);
JButton eDate = (JButton) fDate.getComponent(1);
fDate.remove(eDate);
我认为这种方法无论如何都行不通,但是目前我还不知道更好。
有什么建议?
最佳答案
找到了可行的解决方案,但不是最干净的方法:
JXDatePicker fDate = new JXDatePicker(new Date());
//edit the Textfield
fDate.getEditor().setBorder(null);
fDate.getEditor().setEditable(false);
//edit the Button
JButton dateBtn= (JButton) fDate.getComponent(1);
Image editImage =Toolkit.getDefaultToolkit().getImage(getClass().getResource("/toolbarButtonGraphics/general/Edit16.gif"));
dateBtn.remove(eDate);
dateBtn.setIcon(new ImageIcon(editImage));
dateBtn.setFocusPainted(false);
dateBtn.setMargin(new Insets(0, 0, 0, 0));
dateBtn.setContentAreaFilled(false);
dateBtn.setBorderPainted(false);
dateBtn.setOpaque(false);
我在视图中的其他地方添加了dateBtn。