网站建设资讯

NEWS

网站建设资讯

java渐变色代码 java调颜色

java 中怎样设置窗口的颜色

调用需要设置颜色的控件的setBackgroud();方法就可以了。

10年积累的成都网站设计、做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站制作后付款的网站建设流程,更有成安免费网站建设让你可以放心的选择与我们合作。

但是设置JFrame和JLabel的背景色,一般就是下面的做法

JFrame frame = new JFrame();

frame.setBackground(Color.Red);

JLabel l = new JLabel();

l.setBackground(Color.Yellow);

frame.add(l);

结果根本就没有反应。这是由于Swing跟AWT有千丝万缕的联系,它既要支持AWT又要有自己新的体系,所以呢,这个如果对于AWT中的Frame是可以直接通过setBackground来设置背景色,但是对于JFrame则不可以,应该采用下面的方法:

JFrame frame = new JFrame();

frame.getContentPane().setBackground(Color.Red);

而对于JLabel来说则要设置JLabel为不透明的才行,即

JLabel comp = new JLabel(value);

comp.setBackground(color);

comp.setOpaque(true);

这句代码frame.setBackground(Color.Red);

改变的是框架的颜色,框架的上面还有窗格,所以你要改变窗格的颜色才可以侧低改变框架的颜色

在主函数里加Containerframe.getContentPane()意思是获得窗格

         setBackground(Color.Red);                       改变窗格颜色

另外再附一段背景颜色渐变的代码

运行示意图如下:

import java.awt.Color;

import java.awt.GradientPaint;

import java.awt.Graphics;

import java.awt.Graphics2D;

import javax.swing.JPanel;

import java.awt.BorderLayout;

import java.awt.EventQueue;

import javax.swing.JFrame;

import javax.swing.JPanel;

class ShadePanel extends JPanel {

private static final long serialVersionUID = -2644424271663261406L;

public ShadePanel() {

super();

setLayout(null);

}

@Override

protected void paintComponent(Graphics g1) {// 重写绘制组件外观

Graphics2D g = (Graphics2D) g1;

super.paintComponent(g);// 执行超类方法

int width = getWidth();// 获取组件大小

扮稿 int height = getHeight();

// 创建填充模式对象棚桥

GradientPaint paint = new GradientPaint(0, 0, Color.CYAN, 0, height,

Color.MAGENTA);

g.setPaint(paint);// 设置绘图对象的填充模式

g.fillRect(0, 0, width, height);// 绘制矩形填充控件界面

}

}

public class ShadeBackgroundImage extends JFrame {

private static final 链缺猛long serialVersionUID = 4693799019369193520L;

private JPanel contentPane;

public static void main(String[] args) {

EventQueue.invokeLater(new Runnable() {

public void run() {

try {

ShadeBackgroundImage frame = new ShadeBackgroundImage();

frame.setVisible(true);

} catch (Exception e) {

e.printStackTrace();

}

}

});

}

public ShadeBackgroundImage() {

setTitle("背景为渐变色的主界面");// 设置窗体标题

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setBounds(100, 100, 450, 300);

contentPane = new JPanel();// 创建内容面板

contentPane.setLayout(new BorderLayout(0, 0));

setContentPane(contentPane);

ShadePanel shadePanel = new ShadePanel();// 创建渐变背景面板

contentPane.add(shadePanel, BorderLayout.CENTER);// 添加面板到窗体内容面板

}

}

谁帮我讲解下这个java代码

这个比较简单,没啥东西,就是每列开始行的选择,有点绕弯,我就注释下GraphicsPanel吧,主要的绘制工作都在这个类里面

private class GraphicsPanel extends JPanel {

public void paint(Graphics g) {

Graphics2D g2d = (Graphics2D) g;

g2d. setFont (getFont (). deriveFont (Font. BOLD));

g2d. setColor(Color. BLACK);

g2d. fillRect (0, 0, screenSize. width, screenSize. height);   // 设置背景色为黑色

int currentColumn = 0;

for (int x = 0; x  screenSize.width; x += gap) {

int endPos = posArr[currentColumn];      //获得开始行位置

g2d. setColor(Color. GREEN);

g2d.drawString(String.valueOf(getChr()), x, endPos * gap);     //画出随机开始行的字符

int cg = 0;                     和明                                      //初始黑色

for (int j = endPos -16; j  endPos; j++) {           //随机行逐列向上16行,为循环开始行

cg += 15;       碧唯                                              //渐变色15递增,255为green

if (cg  255) {

cg = 255;

}

g2d.setColor(new Color(0, cg, 0));

悔棚培                   g2d.drawString(String.valueOf(getChr()), x, j * gap);    //画出随机行后的15行字符,颜色从黑色渐变成绿色,逐行增加

}

posArr[currentColumn] += random.nextInt(5);      //下落距离最快为4

if (posArr[currentColumn] * gap  getHeight()) {  //如果行数位置大于屏幕高度,从新获取合适的行

posArr[currentColumn] = random.nextInt(lines);

}

currentColumn++;    //下一列获取随机行

}

如何使用java设置LinearLayout背景为渐变色

至少有两种方案可以实现:

第一是使用背景图片,就是给Linearlayout添加一个background属性,值选择一张带渐变颜色的图片即可。

第二种方案是使用独立的颜色代码来替代上述一种的背景图片,比如可以在res/drawable下新建一个mycolor.xml,然后再在LinearLayout添加属性

android:background="@drawable/mycolor"即可

?xml version="1.0" encoding="utf-8"?

shape xmlns:android="

gradient

android:angle="270"

android:centerColor="#00FFFF"

android:centerX="0.5"

歼庆   android:centerY="悔碧0。3"

android:endColor="#666666"

android:startColor="#0099FF" /

padding

android:bottom="7dp"

android:left="7dp"

android:right="7dp"

android:top="7dp" /

corners android:radius="4dp" /

/shape

解析:其中android:angle ="270.0"代表角度为270,由上到下的渐变,如果我改变成0那么就变成了从左到右的渐变,如果改变90.0那么渐变碧改举会从下边往上渐变,可以 多改变一下参数试试效果。centerColor中间颜色; centerX: x轴渐变中心,从左到右渐变时有意义;centerY: 同理y轴的渐变中心;endColor 渐变终点颜色,同样startColor为渐变起点颜色。

上述代码效果如下:


当前文章:java渐变色代码 java调颜色
文章起源:http://cdweb.net/article/ddpgdie.html