在一个applet中动态的写了很多的JLabel(没有具体的名称),通过什么方式可以在符合某一条件的情况下改变某一个JLabel的文本,在不采用重新 就是根据具体的值来改变相对应的JLabel,这两个问题能具体些吗?解决就一定给分! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 ok,我先解决你的第2个问题,写了个例子,你看看/**<Applet code=AddLabelTest width=300 height=300>*</Applet>*/import java.applet.Applet;import java.awt.*;import java.awt.event.*;public class AddLabelTest extends Applet{ Button btn=new Button("add new label"); public void init() { add(btn); btn.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { Label lab=new Label("this is a new Label"); lab.setBackground(Color.black); lab.setForeground(Color.green); add(lab); validate(); } }); }} 谢谢你,我的第一个问题是有很多动态的JLabel,如果我从一个方法中得到一个参数,这个参数恰好是某个JLabel的文本,那么我就把那个JLabel的背景换颜色!谢谢!回答完就给分! 把那些JLabel加到一个数组中JLabel[] labels=new JLabel[5];初始化:for(int i=0;i<labels.length;i++){ labels[i]=new JLabel("jlabel"+i);}好了,现在假设你从一个方法中得到一个参数"jlabel2"代码如下: for(int i=0;i<labels.length;i++) { JLabel label=labels[i]; String s=label.getText(); if(s.equals("jlabel2")) { label.setBackground(Color.orange); break; } } import java.awt.*;import java.applet.*;import javax.swing.*;import java.awt.event.*;public class LabelText extends JApplet { JPanel jp=new JPanel(); JL jlObj=new JL("click me"); JL jladd=new JL("add a new label"); String str; public void init() { getContentPane().add(jp); jp.add(jlObj); } public void ReallyAdd() { jp.add(jladd); jlObj.setText("added"); } class JL extends JLabel { JL(String constr) { setText(constr); addMouseListener(new PanelMouseProcess()); } public void addLabel() { //if ......your condition ReallyAdd(); } class PanelMouseProcess extends MouseAdapter { public void mouseClicked(MouseEvent e) { addLabel(); } } }} 参数列表问题 java程序中的有序性 如何读取一个后缀为.java的文件,然后获取这个java文件对应的Class对象? 为什么我写的JFrame只能在main方法里new,不能在按钮事件里new 怎么用File类删除一个文件? 求“酒店前台营收管理系统”毕业设计 [急用]如何用JAVA编写相同性质文件的输出? 跪求:JAVA如何计算机出今天为今年的第几周?(高分求答) 在线等,不同JPanel的调用问题 求教:如何得到数据库中某表的主键? repaint()和paint(g) 为什么没有出滚动条?
/*
*<Applet code=AddLabelTest width=300 height=300>
*</Applet>
*/
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
public class AddLabelTest extends Applet
{
Button btn=new Button("add new label");
public void init()
{
add(btn);
btn.addActionListener(
new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
Label lab=new Label("this is a new Label");
lab.setBackground(Color.black);
lab.setForeground(Color.green);
add(lab);
validate();
}
});
}
}
JLabel[] labels=new JLabel[5];
初始化:
for(int i=0;i<labels.length;i++)
{ labels[i]=new JLabel("jlabel"+i);}
好了,现在假设你从一个方法中得到一个参数"jlabel2"
代码如下:
for(int i=0;i<labels.length;i++)
{
JLabel label=labels[i];
String s=label.getText();
if(s.equals("jlabel2"))
{
label.setBackground(Color.orange);
break;
}
}
import java.applet.*;
import javax.swing.*;
import java.awt.event.*;
public class LabelText extends JApplet {
JPanel jp=new JPanel();
JL jlObj=new JL("click me");
JL jladd=new JL("add a new label"); String str;
public void init() {
getContentPane().add(jp);
jp.add(jlObj);
}
public void ReallyAdd()
{
jp.add(jladd);
jlObj.setText("added");
}
class JL extends JLabel
{
JL(String constr)
{
setText(constr);
addMouseListener(new PanelMouseProcess());
}
public void addLabel()
{
//if ......your condition
ReallyAdd();
} class PanelMouseProcess extends MouseAdapter
{
public void mouseClicked(MouseEvent e)
{
addLabel();
} }
}
}