java学习问题清单

6.画图,无效?

/**
 * 画图,Paint
 */
public class A07Paint {
    public static void main(String[] args) {
        new PaintFrame().loadFrame();
    }
}
class PaintFrame extends Frame {
    public void loadFrame(){
        setSize(500,300);
        setTitle("Paint");
        setLocationRelativeTo(null);
        setVisible(true);
    }
    //画笔
    @Override
    public void paint(Graphics g) {
        g.setColor(Color.RED);
        g.drawOval(100,100,200,100);
        g.fillOval(200,100,50,50);
        g.fill3DRect(300,200,50,50,true);
        //画图像???
        try {
            System.out.println(PaintFrame.class.getResource("sun.jpg").getPath());
            Image image=Toolkit.getDefaultToolkit().getImage(PaintFrame.class.getResource("sun.jpg"));
            Boolean b=g.drawImage(image,100,100,null);
            System.out.println(b);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

5."this"代表什么?

1.JMenuItem.addActionListener(this);

2.静态变量不能用“this”

    public static void setX(int x) {
        this.x = x; //错误,要用类名!
    }
    public static int getY() {
        return y;
    }
    public static void setY(int y) {
        Square.y = y;//正确!
    }

4.窗体添加了菜单,运行时却没有菜单?修改代码第一次运行有,再运行无?!

1.最小化,最大化后又显示

原因是setVisible()位置问题,要在加载Menu后再setVisible()

3.String与StringBuffer之间可否转换?

String -> StringBuffer
方式一:构造方法
方式二:通过append方法
StringBuffer -> String
方式一:通过构造方法
方式二:通过toString方法

2.无法设置窗体背景颜色?

重写窗体的paint()!

JFrame.setBackground(Color.RED);
paint();

JFrame.getContentPane().setBackground(Color.RED)?

1.文件路径

相对路径都是基于工程目录作为根目录,从其下一级目录开始:imgs/.../image.png;

posted @ 2022-02-15 23:09  老李学Java  阅读(39)  评论(0)    收藏  举报