如何将JLabel添加到另一个类的JFrame中?
我是编码新手,我遇到了这个问题:我想将JLabel
添加到我在不同类中创建的JFrame
。这是密码。我不知道怎么做才合适,但如果他们用同样的方法,我会知道怎么做。
映射:
import javax.swing.JFrame;
public class Map {
public static void main(String[] args) {
map();
}
private static void map() {
JFrame window = new JFrame("Run Kitty Run!");
window.setVisible(true);
window.setSize(1000, 500);
}
}
猫:
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class Cat
{
//instance variables
ImageIcon pic;
public Cat()
{
//constructor
pic = new ImageIcon("/Users/dell/Desktop/runKittyRun/cat.png");
}
public static void main(String[] args) {
// TODO Auto-generated method stub
}
public void draw()
{
JPanel panel = new JPanel();
JLabel label = new JLabel(pic);
panel.add(label);
panel.setVisible(true);
}
}
我试过做windows.add(标签),但不起作用。:/
解决方案
OK,这对任何变量或方法都有效,而不仅仅是JLabel。让我们首先将这些方法称为method one和method Two。Method One将在一个名为One的类中(我不会费心写出类主体,我是在我的iPod中写的)
JLabel jl;
public void methodOne(){
jl = // blah blah blah;
}
好的,现在您希望在第二个方法中使用JL。因此,以下是要做的事情:
public void methodTwo(){
One o = new One();
JFrame j = // instance of JFrame;
j.add(o.jl);
}
记住:JLabel变量在类One中,所以我实例化了一个。
希望能有所帮助
相关文章