Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 通过单击按钮更改JFrame颜色_Java_Swing_Colors_Jframe_Jbutton - Fatal编程技术网

Java 通过单击按钮更改JFrame颜色

Java 通过单击按钮更改JFrame颜色,java,swing,colors,jframe,jbutton,Java,Swing,Colors,Jframe,Jbutton,我想用一个按钮改变框架颜色,而不添加任何面板 如何做到这一点 这是我的代码: import javax.swing.*; import java.awt.*; public class demo{ public static void main (String [] args ){ JFrame frame = new JFrame("Gui"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setBounds(4

我想用一个按钮改变框架颜色,而不添加任何面板

如何做到这一点

这是我的代码:

import javax.swing.*;
import java.awt.*;

public class demo{

public static void main (String [] args ){

JFrame frame = new JFrame("Gui");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setBounds(400,400,400,300);
frame.setLayout(null);
frame.setVisible(true);

JButton butt = new JButton("Change Color");
butt.setBounds(50,50,150,30);
frame.add(butt);

}
}

将ActionListener添加到按钮

butt.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
        frame.getContentPane().setBackground(Color.BLACK);
    }
});
顺便说一句,不要使用
setBounds()
和null布局,而是查看一下。您还应该在添加所有组件之后而不是之前调用
setVisible()

完整代码:

import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;

public class demo {

    public static void main(String[] args) {

        JFrame frame = new JFrame("Gui");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        JButton butt = new JButton("Change Color");
        butt.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                frame.getContentPane().setBackground(Color.BLACK);
            }
        });

        frame.getContentPane().setLayout(new FlowLayout());
        frame.getContentPane().add(butt);

        frame.setSize(500, 500);
        frame.setVisible(true);

    }

}

将ActionListener添加到按钮

butt.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
        frame.getContentPane().setBackground(Color.BLACK);
    }
});
顺便说一句,不要使用
setBounds()
和null布局,而是查看一下。您还应该在添加所有组件之后而不是之前调用
setVisible()

完整代码:

import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;

public class demo {

    public static void main(String[] args) {

        JFrame frame = new JFrame("Gui");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        JButton butt = new JButton("Change Color");
        butt.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                frame.getContentPane().setBackground(Color.BLACK);
            }
        });

        frame.getContentPane().setLayout(new FlowLayout());
        frame.getContentPane().add(butt);

        frame.setSize(500, 500);
        frame.setVisible(true);

    }

}

将ActionListener添加到按钮

butt.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
        frame.getContentPane().setBackground(Color.BLACK);
    }
});
顺便说一句,不要使用
setBounds()
和null布局,而是查看一下。您还应该在添加所有组件之后而不是之前调用
setVisible()

完整代码:

import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;

public class demo {

    public static void main(String[] args) {

        JFrame frame = new JFrame("Gui");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        JButton butt = new JButton("Change Color");
        butt.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                frame.getContentPane().setBackground(Color.BLACK);
            }
        });

        frame.getContentPane().setLayout(new FlowLayout());
        frame.getContentPane().add(butt);

        frame.setSize(500, 500);
        frame.setVisible(true);

    }

}

将ActionListener添加到按钮

butt.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
        frame.getContentPane().setBackground(Color.BLACK);
    }
});
顺便说一句,不要使用
setBounds()
和null布局,而是查看一下。您还应该在添加所有组件之后而不是之前调用
setVisible()

完整代码:

import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;

public class demo {

    public static void main(String[] args) {

        JFrame frame = new JFrame("Gui");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        JButton butt = new JButton("Change Color");
        butt.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                frame.getContentPane().setBackground(Color.BLACK);
            }
        });

        frame.getContentPane().setLayout(new FlowLayout());
        frame.getContentPane().add(butt);

        frame.setSize(500, 500);
        frame.setVisible(true);

    }

}

首先,您需要添加一个ActionListener。否则,当你点击按钮时,它将不知道该做什么。下面是一个你会发现有用的链接

从那里设置背景色很容易。简单地称之为类似的东西

if(e.getSource() == myButtonName) {
    frame.getContentPane().setBackground(Color.BLUE);
}

首先,您需要添加一个ActionListener。否则,当你点击按钮时,它将不知道该做什么。下面是一个你会发现有用的链接

从那里设置背景色很容易。简单地称之为类似的东西

if(e.getSource() == myButtonName) {
    frame.getContentPane().setBackground(Color.BLUE);
}

首先,您需要添加一个ActionListener。否则,当你点击按钮时,它将不知道该做什么。下面是一个你会发现有用的链接

从那里设置背景色很容易。简单地称之为类似的东西

if(e.getSource() == myButtonName) {
    frame.getContentPane().setBackground(Color.BLUE);
}

首先,您需要添加一个ActionListener。否则,当你点击按钮时,它将不知道该做什么。下面是一个你会发现有用的链接

从那里设置背景色很容易。简单地称之为类似的东西

if(e.getSource() == myButtonName) {
    frame.getContentPane().setBackground(Color.BLUE);
}

frame.setBounds(400300)1)Java GUI必须在不同的操作系统、屏幕大小、屏幕分辨率等上工作,在不同的地区使用不同的PLAF。因此,它们不利于像素完美布局。而是使用布局管理器,或与布局填充和边框一起使用。2) 使用缩进代码行和代码块的逻辑和一致形式。缩进的目的是使代码的流程更易于遵循<代码>框架立根(400300)1)Java GUI必须在不同的操作系统、屏幕大小、屏幕分辨率等上工作,在不同的地区使用不同的PLAF。因此,它们不利于像素完美布局。而是使用布局管理器,或与布局填充和边框一起使用。2) 使用缩进代码行和代码块的逻辑和一致形式。缩进的目的是使代码的流程更易于遵循<代码>框架立根(400300)1)Java GUI必须在不同的操作系统、屏幕大小、屏幕分辨率等上工作,在不同的地区使用不同的PLAF。因此,它们不利于像素完美布局。而是使用布局管理器,或与布局填充和边框一起使用。2) 使用缩进代码行和代码块的逻辑和一致形式。缩进的目的是使代码的流程更易于遵循<代码>框架立根(400300)1)Java GUI必须在不同的操作系统、屏幕大小、屏幕分辨率等上工作,在不同的地区使用不同的PLAF。因此,它们不利于像素完美布局。而是使用布局管理器,或与布局填充和边框一起使用。2) 使用缩进代码行和代码块的逻辑和一致形式。缩进的目的是使代码的流程更易于遵循!Java错误第16行-局部变量帧从内部类中访问需要声明为最终Java错误第16行-局部变量帧从内部类中访问需要声明为最终:(@KasunPradeep然后重试
final JFrame frame=new JFrame(“Gui”)
@kasumpradeep,
请给我完整的代码bro
-这不是它的工作方式。你问了这个问题,所以你努力解决这个问题。那就是你发布你的代码,展示你如何尝试用建议解决这个问题。这叫做a。我们不是来为你写代码的,只是告诉你正确的方向t方向。如果不尝试,就什么也学不到。Java错误行16-局部变量帧从withing内部类访问需要声明为final Java错误行16-局部变量帧从withing内部类访问需要声明为final:(@KasunPradeep然后try
final JFrame=new JFrame(“Gui”)
@kasumpradeep,
请给我完整的代码bro
-这不是它的工作方式。你问了这个问题,所以你努力解决这个问题。那就是你发布你的代码,展示你如何尝试用建议解决这个问题。这叫做a。我们不是来为你写代码的,只是告诉你正确的方向t方向。如果不尝试,就什么也学不到。Java错误行16-局部变量帧从withing内部类访问需要声明为final Java错误行16-局部变量帧从withing内部类访问需要声明为final:(@KasunPradeep然后try
final JFrame=new JFrame(“Gui”)
@kasumpradeep,
请给我完整的代码bro
-这不是它的工作方式。你问了问题,所以你努力解决问题。那就是你发布你的代码,展示你如何尝试使用建议解决问题。这叫做a。我们是