公式アカウントからの投稿が始まります

java(swingフレームワーク使用)を使ってカレンダーを製作しています。
カレンダーの日付を配列で作成しており、土日のみラベルの色を変えたいと思っています。
曜日(土日)は色の変更ができましたが、日付の色変更がうまくいきません。
どなたか教えていただけますと幸いです。

private static final String[] WEEK_NAMES = new String[] {"日", "月", "火", "水", "木", "金", "土"};

//曜日の配列
for( int i=0; i<7; i++) {
weekLabels[i] = new JLabel(WEEK_NAMES[i]);
weekLabels[i].setHorizontalAlignment(SwingConstants.CENTER);
weekLabels[i].setVerticalAlignment(SwingConstants.CENTER);
weekLabels[i].setPreferredSize(DAY_LABEL_SIZE);
weekLabels[i].setOpaque(true);
weekLabels[i].setBackground(WEEK_BG);
//weekLabels[i].setBorder(WEEK_BORDER);
if( i == 0 ) {
weekLabels[i].setForeground(Color.RED);
} else if ( i == 6 ) {
weekLabels[i].setForeground(Color.BLUE);
}


dayPanel.add(weekLabels[i]);
}



//日付の配列
for( int i=0; i<6; i++) {
for( int j=0; j<7; j++) {

dayLabels[i][j] = new JLabel();
dayLabels[i][j].setHorizontalAlignment(SwingConstants.CENTER);
dayLabels[i][j].setVerticalAlignment(SwingConstants.CENTER);
dayLabels[i][j].setOpaque(true);
dayLabels[i][j].setBackground(DAY_BG);
dayLabels[i][j].setPreferredSize(DAY_LABEL_SIZE);
//dayLabels[i][j].setBorder(new LineBorder(Color.DARK_GRAY, 2, false));


dayPanel.add(dayLabels[i][j]);
}

}

A 回答 (2件)

グレゴリオ暦のカレンダーを使って、指定日付が何曜日なのか判定しましょう


https://docs.oracle.com/javase/jp/10/docs/api/ja …
https://docs.oracle.com/javase/jp/10/docs/api/ja …
    • good
    • 0

具体的に何をどう困っているのかわからんのだけど, setForeground でしかるべきところにしかるべき色を設定すればよいのでは?



タイトルの「配列の受け取り方」とどう関係するのかもわからん.
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!