「java窗体颜色」java给窗口设定背景颜色的方法是

博主:adminadmin 2022-11-30 22:20:08 87

本篇文章给大家谈谈java窗体颜色,以及java给窗口设定背景颜色的方法是对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java怎么改变窗体边框的颜色?

如果你想给窗口内部加上一个边框,可以在窗口内加一个Panel,设置Panel的边框就行。

如果你想修改操作系统提供的边框颜色,是做不到的,但是可以去掉系统提供的边框,重写paint方法自己模拟一个:

import java.awt.Color;

import java.awt.Graphics;

import java.awt.Rectangle;

import javax.swing.JFrame;

import javax.swing.JPanel;

import javax.swing.border.LineBorder;

public class MyFrame {

public static void main(String[] args) {

JFrame frame1 = new JFrame();

frame1.setBounds(400, 300, 200, 200);

frame1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JPanel panel = new JPanel();

panel.setBorder(new LineBorder(Color.red));

frame1.add(panel);

frame1.setVisible(true);

JFrame frame2 = new JFrame() {

public void paint(Graphics g) {

super.paint(g);

Rectangle rect = this.getBounds();

int width = (int) rect.getWidth() - 1;

int height = (int) rect.getHeight() - 1;

g.setColor(Color.red);

g.drawRect(0, 0, width, height);

}

};

frame2.setBounds(650, 300, 200, 200);

frame2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame2.setUndecorated(true);

frame2.setVisible(true);

}

}

java窗口颜色

因为jframe窗口,其实从下到上分为好几层:rootpane

layeredpane

contentpane

glasspane

其中最上面的glasspane是透明的。所以设置背景色,需要设置在contentpane上才能显示。

JAVA中如何控制窗体背景与字体的颜色

如果就设置字体,即大小,加一句setFont就行了

import javax.swing.*;

import java.awt.*;

import java.awt.event.WindowEvent;

public class Q1{

JWindow window = new JWindow();

Q1(String pText){

//获取当前计算机屏幕尺寸

Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();

//定义标记显示信息

JLabel jl = new JLabel(pText,JLabel.CENTER);

Font d=new Font("楷体",Font.BOLD,10);

jl.setFont(d); //注意这句

//添加组件到窗口

window.getContentPane().add(jl, BorderLayout.CENTER);

// 设置窗口尺寸

window.setSize(300, 100);

//设置窗口显示位置

int w = window.getSize().width;

int h = window.getSize().height;

int x = (dim.width-w)/2;

int y = (dim.height-h)/2;

//移动窗口到X,Y坐标。这里时屏幕的中央

window.setLocation(x, y);

}

//隐藏窗口

public void hidden(){

window.setVisible(false);

}

//显示窗口

public void show(){

window.setVisible(true);

}

public static void main(String[] args){

//

Q1 jw = new Q1("沟通无距离!平行线聊天系统...o(∩_∩)o...");

jw.show();

//显示延时

try{

Thread.sleep(4000);

}catch(InterruptedException ie){

System.out.println("sleep error!!");

}

//调用隐藏

//jw.hidden();

}

public void windowClosing(WindowEvent windowEvent) {

System.exit(0);

}

}

如果要设置字体颜色,你可以自定义继承JLabel的类,在paintComponent(Graphics g)方法中,用g.setColor();g.drawString()做。

设置背景的话在setFont下加一句setBackground()方法,传Image类进去。

java窗口的背景颜色

public void setBackground(Color c)设置组件的背景色。

背景色对每个组件的影响各不相同,并且部分受背景色影响的组件在不同的操作系统之间可能有所不同。

用这个方法嘛,改变不了,可能是你在窗体上添加了别的容器什么的把当前要改变的给挡上了.仔细排查一下,相信你会改过来的.

java 中怎样设置窗口的颜色

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

但是设置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窗体颜色的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java给窗口设定背景颜色的方法是、java窗体颜色的信息别忘了在本站进行查找喔。

The End

发布于:2022-11-30,除非注明,否则均为首码项目网原创文章,转载请注明出处。