新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
setBackground设置背景色!
创新互联专注为客户提供全方位的互联网综合服务,包含不限于网站设计、做网站、蒲城网络推广、微信平台小程序开发、蒲城网络营销、蒲城企业策划、蒲城品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联为所有大学生创业者提供蒲城建站搭建服务,24小时服务热线:028-86922220,官方网址:www.cdcxhl.com
布局随便选,下面程序使用了边框(BorderLayout)和流水(FlowLayout)2种布局方式!
顺便帮你加了一个按钮事件!有问题再追问吧!~
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.FlowLayout;
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;
public class Test extends JFrame implements ActionListener {
private JPanel panel0 = null, panel2 = null;
private JButton b1 = null, b2 = null, b3 = null, b4 = null;
public Test() {
Container c = this.getContentPane();
//边框布局
c.setLayout(new BorderLayout());
//创建panel
panel0 = new JPanel();
panel2 = new JPanel();
//为2个panel设置底色
panel0.setBackground(Color.red);
panel2.setBackground(Color.BLUE);
//2个panel都是用流水布局
panel0.setLayout(new FlowLayout());
panel2.setLayout(new FlowLayout());
//创建按钮
b1 = new JButton("panel2黄色");
b2 = new JButton("panel2绿色");
b3 = new JButton("panel0橙色");
b4 = new JButton("panel0灰色");
/**
* 添加按钮事件
*/
b1.addActionListener(this);
b2.addActionListener(this);
b3.addActionListener(this);
b4.addActionListener(this);
/**
* 将按钮添加相应panel上
*/
panel0.add(b1);
panel0.add(new JLabel());
panel0.add(b2);
panel2.add(b3);
panel2.add(b4);
/**
* 将panel添加到容器
*/
c.add(panel0, BorderLayout.CENTER);
c.add(panel2, BorderLayout.EAST);
this.setSize(500, 500);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
public static void main(String[] args) {
new Test();
}
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if (e.getSource() == b1) {
panel2.setBackground(Color.yellow);
} else if (e.getSource() == b2) {
panel2.setBackground(Color.green);
} else if (e.getSource() == b3) {
panel0.setBackground(Color.ORANGE);
} else if (e.getSource() == b4) {
panel0.setBackground(Color.GRAY);
}
}
}
既然是流水不重复,那么这个变量一定是常驻内存。。
简单的方法当然是个静态变量。。。
class A
{
static double n=0;
public static double getNumber()
{
double++;
return double ;
}
}
需要的时候直接 A.getNumber();直接重复调用就可以了。
如果是关了程序下次还是不重复,那就可以使用文件来初始化n
关闭程序把当前n保存到文件。
Java中通过布局管理器(LayoutManager)来布局控件。
常见的布局管理器如下:
BorderLayout:Frame和Dialog的默认布局管理器。其把面板分为上北、下南、左西、右东和中间,5个部分,在未指定控件大小的情况下,被加入的控件将会随着内容大小自动伸缩,随着窗口的放大缩小也相应的产生伸缩。
FlowLayout :按顺序布局控件。所有控件按照流水一样排列,若当前行放不下了,则自动排到下一行。按子控件的大小(getPreferedSize())在当前面板布局。
GridLayout :网格布局。该布局将所有控件按从左到右,从上到下的形式把控件以网格的形式排列出来。子控件会填满整个面板。
GridBagLayout :网格包布局。能布局复杂界面,但其使用也很复杂,一般不用。
null布局:即将布局管理器设置为null。此时,通过调用子控件的setBounds方法进行布局。
其他布局管理器。以上是Java内置的常用布局管理器,还有一些非官方的好用布局管理器:XYLayout(按大小和位置布局)、VerticalFlowLayout (纵向流水布局)、TableLayout(表格布局)。
一般的Java程序布局方式:用FlowLayout布局一些按钮,用BorderLayout嵌套多个面板。