3

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);

とにかくこのアプローチがうまくいくとは思いませんが、現時点ではそれ以上のことはわかりません。助言がありますか?

4

2 に答える 2

2

実用的な解決策が見つかりましたが、最もクリーンな方法ではない可能性があります:

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 を追加しました。

于 2011-12-07T15:58:23.310 に答える