導航:首頁 > 編程語言 > java在屏幕上用畫一個空心圓

java在屏幕上用畫一個空心圓

發布時間:2023-02-02 09:08:59

⑴ 怎麼在java里畫出小圓點

package test;

import java.awt.Canvas;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Toolkit;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.JFrame;
import javax.swing.JPanel;

public class PaintDemo extends JFrame{

/**
*
*/
private static final long serialVersionUID = -95348909224392777L;
JPanel c=canvas();
public PaintDemo(){
.setTitle("Small point paint test");
int w=300,h=300;
this.setSize(w, h);
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
this.setSize(w,h);
this.setLocation(screenSize.width / 2 - w / 2,
screenSize.height / 2 - h / 2);
this.setLayout(null);

this.add(this.c);
this.c.setBounds(0, 0, 300, 300);
this.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
dispose();
System.exit(0);
}
});

this.setVisible(true);
}
public JPanel canvas() {
JPanel panel = new JPanel() {
private static final long serialVersionUID = 1L;

@Override
public void paint(Graphics g) {
super.paint(g);
g.fillOval(100, 100, 100, 100);
}
};
return panel;
}

/**
* @param args
*/
public static void main(String[] args) {
new PaintDemo();
}

}

⑵ 在Java中如何用程序畫一個圓

使用java畫圓要用到繪圖類Graphics,下面是實例代碼和運行效果:

packagecom.dikea.demo01;

importjava.awt.*;

importjavax.swing.*;

//java繪圖原理

publicclassdemo_01extendsJFrame{

MyPanelmp=null;

publicstaticvoidmain(String[]args){

//TODO自動生成的方法存根

demo_01demo01=newdemo_01();

}

publicdemo_01(){

mp=newMyPanel();

this.add(mp);

this.setSize(400,300);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

}

}

//定義一個MyPanel面板,用於繪圖區域

classMyPanelextendsJPanel{

//覆蓋JPanel

//Graphics是繪圖的重要類,可以理解成一支畫筆

publicvoidpaint(Graphicsg){

//1.調用父類函數完成初始化任務

//這句話不可以少

super.paint(g);

//先畫出一個圓圈

g.drawOval(100,100,30,30);

}

}

代碼復制進ide編程工具,運行效果如下:

⑶ 用java畫一個圓

import java.awt.*;
import java.applet.*;
import java.awt.event.*;
class MyCanvas extends Canvas
{
int x,y,r,n;
int x0,y0;
MyCanvas()
{
setSize(100,100);
setBackground(Color.red);
}
public void setX(int x)
{
this.x=x;
}
public void setY(int y)
{
this.y=y;
}
public void setR(int r)
{
this.r=r;
}
public void setN(int n)
{
this.n=n;
}
public void paint(Graphics g1)
{
for(int i=0;i<=360;i=i+360/n)
{
x0 = (int)(x+r*Math.cos(i));
y0 = (int)(y+r*Math.sin(i));
g1.drawString("*",x0,y0);}
}
}
public class e1 extends Applet implements ActionListener
{
MyCanvas canvas;
TextField inputR,inputX,inputY,inputN;
Label label1,label2,label3;
Button b1,b2;
public void init()
{
canvas = new MyCanvas();
inputR = new TextField(6);
inputX = new TextField(6);
inputY = new TextField(6);
inputN = new TextField(6);
b1 = new Button("確定");
b1.addActionListener(this);
label1 = new Label("輸入位置坐標:");
label2 = new Label("輸入半徑:");
label3 = new Label("輸入要列印的*數:");
add(label1);
add(inputX);
add(inputY);
add(label2);
add(inputR);
add(label3);
add(inputN);
add(b1);
add(canvas);
}
public void actionPerformed(ActionEvent e)
{
int x=0,y=0,n=0,r=0;
try
{
x=Integer.valueOf(inputX.getText()).intValue();
y=Integer.valueOf(inputY.getText()).intValue();
n=Integer.valueOf(inputN.getText()).intValue();
r=Integer.valueOf(inputR.getText()).intValue();
canvas.setX(x);
canvas.setY(y);
canvas.setR(r);
canvas.setN(n);
canvas.repaint();
}
catch(NumberFormatException ee)
{
x = 0;
y = 0;
r = 0;
n = 0;
}

}
}

public void draw(Graphics2D g) {
g.setColor(color);//設置顏色
g.setStroke(stroke);//寬度
int x, y, w, h;
if (startX > endX) {//以下的startx 、endx都是由滑鼠拖 動事件得到
x = endX;
w = startX - endX;
} else {
x = startX;
w = endX - startX;
}
if (startY > endY) {
y = endY;
h = startY - endY;
} else {
y = startY;
h = endY - startY;
}
g.drawOval(x, y, w, h);
}

閱讀全文

與java在屏幕上用畫一個空心圓相關的資料

熱點內容
ps3文件分割視頻 瀏覽:280
微信圖片一鍵轉發軟體 瀏覽:331
如何判斷s200plc編程電纜 瀏覽:691
太原編程培訓班哪個好 瀏覽:171
樹葉吹奏教程 瀏覽:6
社交app帶來了哪些社會問題 瀏覽:394
如何安裝愛寶8800數據採集器 瀏覽:712
文件保存了怎麼找不到了 瀏覽:476
彩票網站怎麼辨真假 瀏覽:840
pr找不到該文件 瀏覽:963
java移除panel 瀏覽:354
jsp填充jsp 瀏覽:166
海關外貿大數據在哪裡查 瀏覽:381
思特奇java筆試題 瀏覽:121
葫蘆俠在手機中的文件名 瀏覽:813
plc編程應該怎麼收錢 瀏覽:584
c語言中源文件由什麼組成 瀏覽:890
linuxhttpdphp配置文件 瀏覽:607
拆單數據要怎麼保存 瀏覽:17
mac電腦怎樣壓縮文件到100m 瀏覽:645

友情鏈接