import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;/**
主类
**/
public class Ensample1
{
public static void main(String[] args)
{
Ensample1Frame aFrame = new Ensample1Frame(); //创建框架类
aFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口
aFrame.setVisible(true); //显示窗口
}
}class Ensample1Frame extends JFrame //框架类
{
public Ensample1Frame()
{
Toolkit kit = Toolkit.getDefaultToolkit(); //Toolkit与系统有关
Dimension screenSize = kit.getScreenSize(); //获得系统屏幕大小
int screenWidth = screenSize.width; //获得系统屏幕宽
int screenHeight = screenSize.height; //获得系统屏幕高
setTitle("例子1"); //标题
setSize(screenWidth / 4,screenHeight / 4); //框架大小
setLocation(screenWidth /2,screenHeight / 2); //框架在桌面显示位置
setResizable(false); //框架是否改变大小,false为不可改变
Image img = kit.getImage("Icon.gif"); //使用工具箱加载图像
setIconImage(img); //框架的图标
Ensample1Panel aPanel = new Ensample1Panel(); //创建面板类
add(aPanel); //将面板添加到框架内
}
}class Ensample1Panel extends JPanel //面板类
{
public void paintComponent(Graphics g) //绘图必须覆盖此方法
{
super.paintComponent(g);
g.drawString("*我的名字叫楚境书生。*",0,15); //面板上绘制字符
Graphics2D g2 = (Graphics2D)g; //绘制2D必须
for(int i = 50;i <= 100;i = i + 10)
g.drawOval(50, i, 0, 0); //绘制点
Point2D p = new Point2D.Double(180,180);
g2.draw(p);
Point2D p1 = new Point2D.Double(50,50); //创建点
Point2D p2 = new Point2D.Double(0,50); //创建点
Line2D l = new Line2D.Double(p2,p1); //创建直线
g2.draw(l); //绘制直线
}
}F:\Java\ensample1>javac Ensample1.java
Ensample1.java:60: 无法将 java.awt.Graphics2D 中的 draw(java.awt.Shape) 应用于 (
java.awt.geom.Point2D)
g2.draw(p);
^
1 错误
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;/**
主类
**/
public class Ensample1
{
public static void main(String[] args)
{
Ensample1Frame aFrame = new Ensample1Frame(); //创建框架类
aFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口
aFrame.setVisible(true); //显示窗口
}
}class Ensample1Frame extends JFrame //框架类
{
public Ensample1Frame()
{
Toolkit kit = Toolkit.getDefaultToolkit(); //Toolkit与系统有关
Dimension screenSize = kit.getScreenSize(); //获得系统屏幕大小
int screenWidth = screenSize.width; //获得系统屏幕宽
int screenHeight = screenSize.height; //获得系统屏幕高
setTitle("例子1"); //标题
setSize(screenWidth / 4,screenHeight / 4); //框架大小
setLocation(screenWidth /2,screenHeight / 2); //框架在桌面显示位置
setResizable(false); //框架是否改变大小,false为不可改变
Image img = kit.getImage("Icon.gif"); //使用工具箱加载图像
setIconImage(img); //框架的图标
Ensample1Panel aPanel = new Ensample1Panel(); //创建面板类
add(aPanel); //将面板添加到框架内
}
}class Ensample1Panel extends JPanel //面板类
{
public void paintComponent(Graphics g) //绘图必须覆盖此方法
{
super.paintComponent(g);
g.drawString("*我的名字叫楚境书生。*",0,15); //面板上绘制字符
Graphics2D g2 = (Graphics2D)g; //绘制2D必须
for(int i = 50;i <= 100;i = i + 10)
g.drawOval(50, i, 0, 0); //绘制点
Point2D p = new Point2D.Double(180,180);
g2.draw(p);
Point2D p1 = new Point2D.Double(50,50); //创建点
Point2D p2 = new Point2D.Double(0,50); //创建点
Line2D l = new Line2D.Double(p2,p1); //创建直线
g2.draw(l); //绘制直线
}
}F:\Java\ensample1>javac Ensample1.java
Ensample1.java:60: 无法将 java.awt.Graphics2D 中的 draw(java.awt.Shape) 应用于 (
java.awt.geom.Point2D)
g2.draw(p);
^
1 错误
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货