欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

java改變顏色代碼 java中顏色

java 編程 背景顏色的改變

**************************************************************

成都創(chuàng)新互聯(lián)是一家專注于網(wǎng)站建設、成都網(wǎng)站設計與策劃設計,羅江網(wǎng)站建設哪家好?成都創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設十多年,網(wǎng)設計領(lǐng)域的專業(yè)建站公司;建站業(yè)務涵蓋:羅江等地區(qū)。羅江做網(wǎng)站價格咨詢:13518219792

新建一個類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é)果如下:

**************************************************************

java設定背景顏色

本來是在drawcomponent這個里邊使用setBackground,你想啊drawcomponent是繼承JComponent的所以它是一個容器,所以它同樣有setBackground這個方法來設置它的背景顏色

但是因為你在設置它本身為一個畫布,因為你用了paintComponent(Graphics?g)

這個方法,所以setBackground這個方法即使你用了也看不到很大的效果。但是有一種取代的方法就是在paintComponent(Graphics?g)方法中首先就用Graphics?所含有的方法g.setColor(Color.black);來設置背景顏色再用g.fillRect(0,?0,?this.getWidth(),?this.getHeight());來填滿整個容器,這就達到了設置背景目的。然后你再g.setColor(其他顏色);來繪制其它圖形.

具體代碼:(在你以上的代碼上修改了點)

public?void?paintComponent(Graphics?g)

{

Graphics2D?g2=(Graphics2D)g;

g.setColor(Color.black);//這里設置背景顏色

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);//這里是你設置其他筆觸顏色

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é)果圖

java 點擊按紐改變背景顏色

分析題目:

一 分析布局: 題目明確的指出了按鈕的位置和大小 ,那么說明需要使用的布局是空布局(絕對布局) , 而JFrame窗口的內(nèi)容面板默認布局是邊界布局(BorderLayout),所以需要設置一下

setLayout(null);//設置為絕對布局

二了解顏色. Color 可以通過紅,綠,藍 三原色, 不同的搭配, 形成不同的顏色.

每個原色的取值范圍是0~255, 比如紅色的rgb值就是r=255,g=0,b=0

胡蘿卜色 r=237,g=145,b=33

三添加顏色 ,java給JFrame添加顏色,比較特殊. 必須添加到內(nèi)容面板上,才能正常顯示(因為JFrame分了好多層)

getContentPane().setBackground(new?Color(r,g,b));//設置窗口的面板背景色

四 事件處理分析: 點擊按鈕,會觸發(fā)ActionEvent 事件,這個事件會被ActionListener 接收器接收到, 只需要重寫ActionListener 里的actionPerformed 方法, 即可實現(xiàn)點擊按鈕后,做某件事

五 具體參考代碼

import?java.awt.*;

import?java.awt.event.*;

import?javax.swing.*;

//?本類繼承JFrame,實現(xiàn)了ActionListener接口

public?class?MyFrame?extends?JFrame?implements?ActionListener{

int?r?=?90;

int?g?=?15;

int?b?=?195;

public?MyFrame()?{

//組件的初始化

JButton?jbRed?=?new?JButton("red");

jbRed.setLocation(20,?80);//按鈕位置

jbRed.setSize(80,?40);//按鈕大小

jbRed.addActionListener(this);//添加點擊按鈕后的事件響應?,因為本類實現(xiàn)了ActionListener接口,所以可以傳入?yún)?shù)this

JButton?jbGreen?=?new?JButton("green");

jbGreen.setLocation(120,?80);

jbGreen.setSize(80,?40);

jbGreen.addActionListener(this);

JButton?jbBlue?=?new?JButton("blue");

jbBlue.setLocation(220,?80);

jbBlue.setSize(80,?40);

jbBlue.addActionListener(this);

//添加組件到窗口

add(jbRed);

add(jbGreen);

add(jbBlue);

//窗口的設置

setLayout(null);//因為每一個按鈕都設置了位置和大小,?那么應該把窗口設置為空布局,?那么位置和大小才能有效

setTitle("窗口標題");

getContentPane().setBackground(new?Color(r,g,b));//設置窗口的面板背景色

setLocation(220,?160);//?窗口位置

setSize(320,?240);//?窗口大小

//setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//點擊關(guān)閉按鈕時,結(jié)束程序

//下面也可以實現(xiàn),點擊關(guān)閉按鈕時,?結(jié)束程序

addWindowListener(new?WindowAdapter()?{

@Override

public?void?windowClosing(WindowEvent?e)?{//點擊關(guān)閉按鈕會觸發(fā)這個事件,調(diào)用這個方法

System.out.println("通過WindowListener實現(xiàn)關(guān)閉");

System.exit(0);//退出

}

});

}

public?void?actionPerformed(ActionEvent?e)?{

String?cmd=e.getActionCommand();

//通過ActionCommand?來判斷是哪一個按鈕被點擊了

if("red".equals(cmd))?{//如果是紅色按鈕被點擊了,那么紅色+10

r+=10;

if(r255)?{//如果red大于255?,可以設置為0?,也可以設置為255,一直鎖定為255?也可設置為初始的90,這里題目這里沒有要求

r=90;

}

}else?if("green".equals(cmd))?{

g+=10;

if(g255)?{

g=15;

}

}else?if("blue".equals(cmd)){

b+=10;

if(b255)?{

b=195;

}

}

this.getContentPane().setBackground(new?Color(r,g,b));

//System.out.println(this.getContentPane().getBackground());

}

public?static?void?main(String[]?args)?{

EventQueue.invokeLater(new?Runnable()?{

public?void?run()?{

new?MyFrame().setVisible(true);//啟動窗口并設置可見

}

});

}

}

寫一個java程序,使其畫一個正方形并改變它的顏色(每秒鐘改變一次)。求完整代碼謝謝

按照你的要求,編寫的Java程序如下

import?java.awt.Color;

import?java.awt.Graphics;

import?javax.swing.JFrame;

public?class?F?extends?JFrame?implements?Runnable{

Color[]?colors?=?{Color.red,Color.orange,Color.yellow,Color.green,Color.cyan,Color.blue,Color.magenta,Color.black};??

int?i=0;

F(){

setTitle("變色正方形");

setSize(400,?400);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setLocationRelativeTo(null);

setVisible(true);

}

public?void?paint(Graphics?g){

g.setColor(colors[i]);

g.drawRect(100,100,200,200);

}

@Override

public?void?run()?{

while(true){

try?{

Thread.sleep(1000);

}?catch?(InterruptedException?e)?{

e.printStackTrace();

}

if(i7)

i++;

else

i=0;

repaint();

}

}

public?static?void?main(String[]?args)?{

F?f=new?F();

Thread?t=new?Thread(f);

t.start();

}

}

運行結(jié)果

分享題目:java改變顏色代碼 java中顏色
新聞來源:http://chinadenli.net/article0/doddsio.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設計公司微信小程序服務器托管網(wǎng)站內(nèi)鏈做網(wǎng)站移動網(wǎng)站建設

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應式網(wǎng)站建設