Java时钟程序中字体问题

来源:百度知道 编辑:UC知道 时间:2024/06/06 04:20:58
import java.awt.*;
import java.awt.event.*;
import java.util.Calendar;
import java.util.GregorianCalendar;
import javax.swing.*;
public class Show extends JFrame
{
private JButton btnAdd=new JButton("添加内部窗体");
private JDesktopPane desktopPane=new JDesktopPane();
private int windowCount=1;
public Show()
{
setTitle("桌面窗格和内部窗体测试");
setSize(500,500);
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent evt)
{
dispose();
System.exit(0);
}
});
Container contentPane=getContentPane();
contentPane.add(btnAdd,BorderLayout.NORTH);
contentPane.add(desktopPane,BorderLayout.CENTER);
desktopPane.setLayout(new FlowLayout());
btnAdd.addActionListener(new ActionListener()

解决方法:
在public void paint(Graphics g)方法的第一行加上
super.paint(g);
修改后的结果:
import java.awt.*;
import java.awt.event.*;
import java.util.Calendar;
import java.util.GregorianCalendar;
import javax.swing.*;
public class Show extends JFrame
{
private JButton btnAdd=new JButton("添加内部窗体");
private JDesktopPane desktopPane=new JDesktopPane();
private int windowCount=1;
public Show()
{
setTitle("桌面窗格和内部窗体测试");
setSize(500,500);
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent evt)
{
dispose();
System.exit(0);
}
});
Container contentPane=getContentPane();
contentPane.add(btnAdd,BorderLayout.NORTH);
contentPane.add(desktopPane,BorderLayout.CENTER);
desktop