问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

想要改变JFrame的背景,为啥不能改变

发布网友 发布时间:2024-09-30 17:41

我来回答

2个回答

热心网友 时间:2024-12-05 04:27

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

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.JTextField;
//类名要规范,应改为:NumGame
public class numgame extends JFrame implements ActionListener {

//JFrame jfrm=new JFrame();注释掉
JLabel label=null;
JTextField input=null;
JButton button =null;
JTextArea display=null;
public numgame(){
init();
}
public void init(){
label=new JLabel("input a num(0~9):");
input=new JTextField(6);
button =new JButton("重置");
display=new JTextArea(10,20);

JPanel inputPanel=new JPanel();
inputPanel.add(label);
inputPanel.add(input);
getContentPane().add(inputPanel,"North");
getContentPane().add(button,"South");
getContentPane().add(display,"Center");
//...这是添加上的三行...../
inputPanel.setOpaque(false);
button.setOpaque(false);
display.setOpaque(false);
//......../
display.setLineWrap(true);
display.setEditable(false);
button.addActionListener(this);
input.addActionListener(this);
//jfrm.setBackground(Color.RED);改为:
getContentPane().setBackground(Color.RED);
setSize(400,300);
setVisible(true);
}
public void reset(){
input.setText("");
display.setText("");
getContentPane().setBackground(Color.RED);
}
private static numgame thisObj = null;
public static numgame getInstance(){
if(thisObj==null){
thisObj = new numgame();
}
return thisObj;
}
public void actionPerformed(ActionEvent e) {

double rannum,N=10;//随机数
int num;
rannum=N*Math.random();
rannum=(int)rannum;
if(e.getSource()==input)
{
num=Integer.parseInt(input.getText());
System.out.println(rannum);
if(num>rannum)
{

display.append("Too Large!\n");
//你看到的所有当前组件都是加在当前窗体上的,要这个jframe何用?删掉得了
//给这个看不到的窗体改变背景颜色有意义吗?木有啊!
//jfrm.getContentPane().setBackground(Color.RED);改为:
getContentPane().setBackground(Color.RED);
input.setText("");
System.out.println("here2");
}
if(num==rannum)
{
display.append("Right,Good!\n");
//jfrm.getContentPane().setBackground(Color.WHITE);改为:
getContentPane().setBackground(Color.WHITE);
input.setText("");
}
if(num<rannum)
{
display.append("Too Small!\n");
//jfrm.getContentPane().setBackground(Color.BLUE);改为:
getContentPane().setBackground(Color.BLUE);
input.setText("");
}

}
else
{

//input.setText("");
//display.append("");
//new numgame();// 这样是不对的,一来,不该产生新的实例,浪费空间,而且达不到目的
this.reset();
System.out.println("here");
}

}
public static void main(String args[]){
getInstance();
}
}

热心网友 时间:2024-12-05 04:27

先把if(e.getSource()==input)
改成if(e.getSource()==botton)
===============================================
jfrm.setBackground(Color.RED);
jfrm.getContentPane().setBackground(Color.BLUE);
都改成
inputPanel.setBackground(Color.XXX);
===============================================
JPanel inputPanel;//声明放在构造方法外面,
inputPanel = new JPanel();//实例化放在构造方法里面
===============================================
如果要JTextArea的背景色,一样可以设置
display.setBackground(Color.RED);追问你把if(e.getSource()==input)
改成if(e.getSource()==botton)
这个不对的,我要监听的是输入的值,对输入的值进行处理,对于button的监听是在else里进行的,改了就无法进行了。你这样修改时一个面板一个面板的进行修改,有没有整体的方法进行修改颜色啊?直接对这个JFame修改?

追答再怎么修改外部,容器内部的东西也会覆盖外部的颜色。
另外 你说要监听输入的值是什么意思呢?每输入一个字母就执行监听方法?

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
叶罗丽精灵梦小游戏有吗? 女孩爱玩化妆换衣服的游戏 洋娃娃类似的游戏推荐 女生换装小游戏有哪些 哪一个换装游戏是古代的宫廷小花仙 女生换装小游戏有哪些 有没有比较好玩的纯古风换装单机游戏啊 父母走了,如何怀念? 如何在失去亲人后怀念他们呢? 父亲过世,如何怀念 U盘损坏数据恢复的有效方法使用专业工具和技巧来恢复U盘中的损坏... ...格式化的U盘中的数据文件简单有效的数据恢复方法和注意事项_百度知 ... 手机格式化恢复技巧教你简单有效地恢复误格式化的手机数据 怎样在新浪微博回覆一个人 兄弟,帮我看一下这段代码,如何让第一行我设置好的一行背景色不改变 How many people are three in your family 是什么意思 VB中的Form1能调色,但command1为什么调不了颜色? three in ten是什么意思? three in our family,one plus two.翻译成汉语什么意思 java swing初学:这段代码设置了窗体背景颜色,为什么运行的时候还是白色... three in the afternoon是什么意思? 卫生间吊顶灯能用多久 卫生间吊顶灯寿命有多长? ...让我一边上班一边休息,单位人不服气,我该怎么怎么做,向领导反映吗... 领导让我考虑考虑,我应该怎么回复呢? 生的蛋清过夜了还可以吃吗 榴莲能冷冻保存吗(榴莲可以放在冰箱保存吗) 在海外,可以用国内信用卡充值支付宝吗,在国外,需要用到支付宝,请问怎么... 挑选榴莲的方法 怎样挑选榴莲好吃 怎么挑选熟的味道好的榴莲?我买了两次不是生的就是没味的,捏着干干的... 买榴莲时,千万别选裂开的!老果农:很多人选错,难怪榴莲不香甜 中国各个省的著名旅游景点有哪些 山西与陕西,两省各出五大风景名胜,谁更胜一筹 过年后想带着一家老小从河北唐山出发,自驾游山西和陕西,有什么好... my father will come back after three in the afternoon什么意思 请问,如果在新浪微博举报一个人,这人能知道是谁举报的么 男生贾里全传关于主演 文学作品男生贾里全传读后感 1000来块配一台电脑,能配到什么配置的,怎么配,能玩什么游戏。机箱和硬... 1000元内的电脑主机能配置成怎样? 梦见自己好像被鬼附身,而自己好现有知道,还让我以帮忙驱鬼,却好像是... d t 9205,万用表多少价钱 hy_9205t万用表拨盘铜片安装图片 二十八星宿都叫什么名 二十八星宿名称详解 win10无法切换中文怎么办? 身边家长建议选好吸收的奶粉,哪个牌子的奶粉好吸收啊? 苹果如何更换手机壁纸? 企业微信实名认证后能更换么? 企业微信实名认证可以更改吗 水果怎样吃能减肥瘦身 减肥晚上吃水煮土豆好还是水果好,别跟我说不吃,晚上我还走五公里和跑... 黑木耳姜片红枣熬水 红枣黑木耳甜汤最正宗的做法(木耳生姜红枣汤怎么做好吃) 黑木耳生姜红枣花生汤制作方法