代碼如下:
創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的咸寧網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
import java.awt.Color; import java.awt.Dimension; import java.awt.Graphics; import javax.swing.JFrame; import javax.swing.JPanel; public class TestSw extends JFrame { public static void main(String[] args) { new TestSw(); } public TestSw(){ super("Test"); this.setSize(new Dimension(400,300)); this.setContentPane(new Mypane()); this.setVisible(true); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } class Mypane extends JPanel{ public void paint(Graphics g) { super.paint(g); g.setColor(Color.red); g.setXORMode(Color.white); g.drawArc(20, 20, 100, 100, 0, 360); ///此方法將畫一個(gè)直徑100的圓.紅色. } } }
靠,樓上的回答那么長啊,只要一個(gè)函數(shù),就是
drawOval(int
x,int
y,int
w,int
h);
這是是畫橢圓形的函數(shù),但是它也可以畫圓形。
比如
drawOval(100,100,50,50);
就在坐標(biāo)50,50畫一個(gè)直徑100的圓,只要把,最后的2個(gè)參數(shù)設(shè)成一樣就是一個(gè)圓。要畫直徑200的話,就把最后2個(gè)參數(shù)設(shè)成200,200
一切OK了
Component c=...........
Graphics g=c.getGraphics();
Graphics類是抽象的,只能通過一個(gè)Component的實(shí)例獲得Graphics類的實(shí)例
例:
Frame f=new Frame();
Graphics g=f.getGraphics();
還有,若要將所畫的顯示出來,則先要使Component可見
你先想這道題的思路吧。
首先打印出圓形的話就是在一個(gè)60-60這種正方形里面話個(gè)圓,你先要知道要畫的點(diǎn)的位置對吧。算出所有的點(diǎn)打印出來。就是這個(gè)思路。然后是怎么算的問題了
public?class?SSS?{
public?static?void?main(String[]?args)?{
//半徑
int?r?=?30;
for?(int?y?=?0;?y?=?2?*?r;?y?+=?2)?{
long?x?=?Math.round(r?-?Math.sqrt(2?*?r?*?y?-?y?*?y));
long?longLength?=?2?*?(r?-?x);
for?(int?i?=?0;?i?=?x;?i++)?{
System.out.print('?');
}
System.out.print('*');
for?(int?j?=?0;?j?=?longLength;?j++)?{
System.out.print('?');
}
System.out.println('*');
}
}
}
使用drawOval來畫圓圈,?
g.drawOval(x, y, w, h); x,y表示圓所在的位置.w ,h 表示圓的寬高,當(dāng)寬高不一致是就是橢圓
實(shí)例
import?java.awt.Color;
import?java.awt.Graphics;
import?javax.swing.JFrame;
public?class?SwingDemo?extends?JFrame{
public?SwingDemo()?{
setTitle("窗口");
setSize(280,?180);
setLocationRelativeTo(null);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
}
public?static?void?main(String[]?args)?{
new?SwingDemo();
}
@Override
public?void?paint(Graphics?g)?{
super.paint(g);
g.setColor(Color.RED);
g.drawOval(150,?100,?30,?20);//畫橢圓
g.setColor(Color.BLUE);
g.drawOval(100,?50,60,?60);//畫圓
}
}
顯示