Java 网格布局弄乱了我的标签
我正在编写简单的日历应用程序。我有一个函数可以画不同的月份,但不知怎么的,其中有些是乱七八糟的。在这里: 如你所见,5月(5日)和8月(8日)没有正确显示。在不同的年份,不同的月份被打破。以下是负责绘制这些图的功能:Java 网格布局弄乱了我的标签,java,swing,fonts,Java,Swing,Fonts,我正在编写简单的日历应用程序。我有一个函数可以画不同的月份,但不知怎么的,其中有些是乱七八糟的。在这里: 如你所见,5月(5日)和8月(8日)没有正确显示。在不同的年份,不同的月份被打破。以下是负责绘制这些图的功能: JPanel month = new JPanel(); month.setBackground(Color.white); month.setPreferredSize(new Dimension(150,180)); month.setLayout(new Grid
JPanel month = new JPanel();
month.setBackground(Color.white);
month.setPreferredSize(new Dimension(150,180));
month.setLayout(new GridLayout(6,6));
for (int j=0; j<=6; j++) //adding days of week labels
{
JLabel dayNameLabel = new JLabel(days[j]);
dayNameLabel.setFont(new Font("Monospace", Font.ITALIC, 12));
dayNameLabel.setOpaque(true);
dayNameLabel.setForeground(Color.gray.darker());
dayNameLabel.setBackground(Color.white);
month.add(dayNameLabel );
}
int dayOfWeek=new GregorianCalendar(myDate.year,argMonth, 1).get(Calendar.DAY_OF_WEEK);
int howMuchDays=new GregorianCalendar(myDate.year,argMonth, 1).getActualMaximum(Calendar.DAY_OF_MONTH);
for(int j=0;j<dayOfWeek-1;j++){ //Adding blank spaces so every day can be on it's spot
JLabel blank = new JLabel(" ");
month.add(blank);
}
for (int j = 1; j<howMuchDays+1;j++)
{
JLabel dayField = new JLabel(Integer.toString(j));
dayField.setFont(new Font("Monospace", Font.BOLD, 12));
dayField.setOpaque(true);
dayField.setBackground(Color.white);
if (new GregorianCalendar(myDate.year, argMonth, j).get(Calendar.DAY_OF_WEEK) == 7)
dayField.setForeground(Color.RED); //make sunday red
else
dayField.setForeground(Color.BLACK);
month.add(dayField );
}
add(month);
JPanel月=新的JPanel();
月.挫折背景(颜色.白色);
月.setPreferredSize(新维度(150180));
月设置布局(新网格布局(6,6));
对于(int j=0;j新的网格布局(6,6)
?这没有意义,因为您不想要6乘6的网格
你不想改用新的GridLayout(0,7)
?这表示一个行数可变但总是有7列的网格,这正是你所需要的。新的GridLayout(6,6)
?这没有意义,因为你不想要6乘6的网格
您不想改用新的GridLayout(0,7)
?这表示行数可变但总是有7列的网格,这正是您需要的