本來是在drawcomponent這個里邊使用setBackground,你想啊drawcomponent是繼承JComponent的所以它是一個容器,所以它同樣有setBackground這個方法來設(shè)置它的背景顏色
成都創(chuàng)新互聯(lián)長期為數(shù)千家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為松北企業(yè)提供專業(yè)的成都網(wǎng)站設(shè)計、做網(wǎng)站,松北網(wǎng)站改版等技術(shù)服務(wù)。擁有10多年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
但是因為你在設(shè)置它本身為一個畫布,因為你用了paintComponent(Graphics?g)
這個方法,所以setBackground這個方法即使你用了也看不到很大的效果。但是有一種取代的方法就是在paintComponent(Graphics?g)方法中首先就用Graphics?所含有的方法g.setColor(Color.black);來設(shè)置背景顏色再用g.fillRect(0,?0,?this.getWidth(),?this.getHeight());來填滿整個容器,這就達(dá)到了設(shè)置背景目的。然后你再g.setColor(其他顏色);來繪制其它圖形.
具體代碼:(在你以上的代碼上修改了點)
public?void?paintComponent(Graphics?g)
{
Graphics2D?g2=(Graphics2D)g;
g.setColor(Color.black);//這里設(shè)置背景顏色
g.fillRect(0,?0,?this.getWidth(),?this.getHeight());//這里填充背景顏色
double?x=100;
double?y=100;
double?w=200;
double?h=150;
Rectangle2D?rect=new?Rectangle2D.Double(x,y,w,h);
g2.setPaint(Color.white);//這里是你設(shè)置其他筆觸顏色
g2.draw(rect);
Ellipse2D?ellipse=new?Ellipse2D.Double();
ellipse.setFrame(rect);
g2.draw(ellipse);
Point2D?p1=new?Point2D.Double(x-40,y-30);
Point2D?p2=new?Point2D.Double(x+w+40,y+h+30);
g2.draw(new?Line2D.Double(p1,p2));
double?centerx=rect.getCenterX();
double?centery=rect.getCenterY();
double?radius=150;
Ellipse2D?circle=new?Ellipse2D.Double();
circle.setFrameFromCenter(centerx,centery,centerx+125,centery+125);
g2.draw(circle);
}
測試結(jié)果圖
**************************************************************
新建一個類ChangeColor.java,代碼如下:
**************************************************************
import?java.awt.Color;
import?java.awt.event.MouseEvent;
import?java.awt.event.MouseMotionListener;
import?javax.swing.JFrame;
/**
*?@author?Godwin
*?@version?2010-05-16
*/
public?class?ChangeColor?extends?JFrame?implements?MouseMotionListener?{
public?ChangeColor()?{
this.setTitle("Change?Color");
this.setBounds(300,?200,?400,?300);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
this.getContentPane().setBackground(Color.GREEN);
this.addMouseMotionListener(this);
}
public?void?mouseMoved(MouseEvent?e)?{
if?(e.getX()??(this.getWidth()?/?2))?{
this.getContentPane().setBackground(Color.RED);
}?else?{
this.getContentPane().setBackground(Color.BLUE);
}
}
public?void?mouseDragged(MouseEvent?e)?{
}
public?static?void?main(String[]?args)?{
new?ChangeColor();
}
}
**************************************************************
運行結(jié)果如下:
**************************************************************
1、我的世界顏色代碼大全。
2、我的世界顏色代碼圖。
3、我的世界顏色代碼符號怎么打。
4、網(wǎng)易我的世界顏色代碼。
1.我的世界顏色代碼是amp。
2.。
3.amp。
4.4=大紅、amp。
5.c=淺紅、amp。
6.6=土黃、amp。
7.e=金黃、amp。
8.2=綠、amp。
9.a=淺綠、amp。
10.b=藍(lán)綠、amp。
11.3=天藍(lán)、amp。
12.1=深藍(lán)、amp。
13.9=藍(lán)紫、amp。
14.d=粉紅、amp。
15.5=品紅、amp。
16.f=白、amp。
17.7=灰、amp。
18.8=深灰、amp。
19.0=黑。
20.我的世界:玩家們可以自由選擇游戲模式[生存、創(chuàng)造、冒險、極限(僅Java版)和旁觀模式(僅Java版)]。
21.在各種模式中體驗不一樣的有趣玩法,在生存模式中享受打怪、冒險等多種樂趣,在創(chuàng)造模式下享受當(dāng)創(chuàng)世神的樂趣。
22.該游戲以玩家在三維空間中自由地創(chuàng)造和破壞不同種類的方塊為主題。
23.玩家在游戲中可以在單人或多人模式中通過摧毀或創(chuàng)造精妙絕倫的建筑物和藝術(shù),或者收集物品探索地圖以完成游戲的成就(進(jìn)度)。