| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 407 人关注过本帖
标题:画一个圆用窗口显示,圆的尺寸怎么通过控制台输入?
只看楼主 加入收藏
啡因
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2014-4-17
结帖率:12.5%
收藏
已结贴  问题点数:10 回复次数:2 
画一个圆用窗口显示,圆的尺寸怎么通过控制台输入?


程序代码:
package 实验3_2;
import java.awt.*;
import javax.swing.*;
public class MyCircle
{    
    private int r;
    private Color Color2;
    private int x,y;
    JFrame mf;
    static double π=3.14159;
    //设置格式
    public MyCircle(int r,int x,int y,JFrame mf)
    {
        this.r=r;
        this.mf=mf;
        this.x=x;
        this.y=y;
        this.Color2=new Color(25,25,100);
    }
    public void draw (Graphics g)
    {
        g.setColor(this.Color2);
        g.fillOval(x, y, r, r);
    }
    public void test()
    {
        mf.repaint();
    }
}

//窗口
程序代码:
package 实验3_2;
import javax.swing.*;
import java.util.Scanner;
import java.awt.*;


    @SuppressWarnings("serial")
    public class MyJFrame extends JFrame
    {
    
        MyCircle mc;
        
        public MyJFrame()
        {
            this.setSize(1000,1000);
            this.setVisible(true);
        }
        public void paint(Graphics g)
        {
            mc.draw(g);
            
        }
        public static void main(String[] arg)
        {
            // TODO Auto-generated method stub
            MyJFrame mf=new MyJFrame();
            
            int X1=50;
            int Y1=200;
            int R1=100;
            Scanner in=new Scanner(System.in);
            X1=in.nextInt();
            Y1=in.nextInt();
            R1=in.nextInt();
            mf.mc=new MyCircle(R1,X1,Y1,mf);
            mf.mc.test();
        }
}

控制台输出Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    at 实验3_2.MyJFrame.paint(MyJFrame.java:21)
    、、

搜索更多相关主题的帖子: 控制台 
2015-10-29 15:34
诸葛欧阳
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:流年
等 级:贵宾
威 望:82
帖 子:2790
专家分:14619
注 册:2014-10-16
收藏
得分:0 
MyJframe中的MyCircle没有定义

一片落叶掉进了回忆的流年。
2015-10-29 20:00
林月儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:湖南
等 级:版主
威 望:138
帖 子:2277
专家分:10647
注 册:2015-3-19
收藏
得分:10 
程序代码:
import java.awt.Color;
import java.awt.Graphics;

import javax.swing.JPanel;

public class MyCircle extends JPanel
{    
    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    private int r;
    private Color color;
    private int x,y;
    static double π=3.14159;
    //设置格式
    public MyCircle(int r,int x,int y)
    {
        this.r=r;
        this.x=x;
        this.y=y;
        this.color=new Color(25,25,100);
    }
    public void paint(Graphics g)
    {
        g.setColor(this.color);
        g.fillOval(x, y, r, r);
    }
}

程序代码:
import java.util.Scanner;

import javax.swing.JFrame;

public class MyJFrame extends JFrame
{

    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    
    public MyJFrame()
    {
        this.setSize(1000,1000);
    }
    public static void main(String[] arg)
    {
        MyJFrame mf=new MyJFrame();
        
        int X1=50;
        int Y1=200;
        int R1=100;
        Scanner in=new Scanner(System.in);
        X1=in.nextInt();
        Y1=in.nextInt();
        R1=in.nextInt();
        in.close();
        MyCircle mc=new MyCircle(R1,X1,Y1);
        mf.add(mc);
        mf.setVisible(true);
    }
}

剑栈风樯各苦辛,别时冰雪到时春
2015-10-30 12:49
快速回复:画一个圆用窗口显示,圆的尺寸怎么通过控制台输入?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.034146 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved