我是Swing的新手,首先。我试图设置录音小程序的背景颜色,使其与我的网页混合(白色而不是默认的灰色),但似乎永远不会改变。继承人applet初始化......
public void init()
{
setLayout(null);
setBackground(Color.white);
JLabel recorder = new JLabel("Record");
JLabel fileName = new JLabel("Please Enter File Name");
JLabel status = new JLabel("Status...");
fnametxt = new JTextField("FileNameHere");
statustxt = new JTextField("");
record = new JButton("Record");
play = new JButton("Play");
pause = new JButton("Pause");
stop = new JButton("Stop");
send = new JButton("Upload");
listen = new JButton("Listen");
save = new JButton("Save and Submit");
//A bunch of other stuff, event listeners and whatnot.
我没有使用布局管理器,我手动设置所有位置。有什么想法吗?
答案 0 :(得分:6)
您(可能)设置了Applet的背景,但该背景仅显示其未被其他组件阻挡的位置。
根据您构建GUI的方式,可能会有内部面板或其他组件覆盖该区域。您也需要更改这些组件的颜色(或者使用setOpaque(false)将它们设置为透明)。
编辑:setOpaque()仅适用于Swing组件,而不适用于Applet本身(因为这是普通的旧AWT)。
答案 1 :(得分:2)
您可能应该设置内容窗格的背景颜色。
答案 2 :(得分:1)
如果您在applet中使用JPanel,则还必须为JPanel的内容窗格着色。以下代码将JPanel本身及其内容窗格的背景设置为白色:
setBackground(Color.white);
getContentPane().setBackground(Color.white); //Color JPanel