1

我开发了一个 Java Swing 应用程序..

如何设置特定 JDayChooser 日期的背景颜色?

谢谢

4

3 回答 3

2

获取日面板

public javax.swing.JPanel getDayPanel()

这将返回日期面板。之后,您可以:

panel.setBackground(color);  

还:

设置前景

public void setForeground(java.awt.Color foreground)

设置前景色颜色。

设置装饰背景颜色

public void setDecorationBackgroundColor(java.awt.Color decorationBackgroundColor)

设置年份按钮的天数和周数的背景。

于 2013-04-26T11:18:26.843 回答
1
    JPanel jPanel = jDayChooser1.getDayPanel();

    Component component[] = jPanel.getComponents();

    for (int i = 7; i < 49; i++) {
        component[i].setBackground(Color.red);
    }

终于有解决方案了:D

于 2013-05-09T05:50:19.310 回答
1

JDayChooser有一个protected指定 的字段selectedColor,但它没有公共接口。你可以,

  • 更改默认灰色,在JDayChooser#init().

  • 添加所需的方法;新的绑定属性将出现在JCalendarDemo.

    public Color getSelectedColor() {
        return selectedColor;
    }
    
    public void setSelectedColor(Color selectedColor) {
        this.selectedColor = selectedColor;
    }
    

正如这里所讨论的,setBackground()在某些外观和感觉实现上读得不好。中的解决方法DecoratorButton#paint()是一个示例。

于 2013-04-27T12:27:42.193 回答