javagui中的图片更改

javagui中的图片更改,java,swing,jframe,jlabel,imageicon,Java,Swing,Jframe,Jlabel,Imageicon,所以我正在用java制作一个GUI。 假设我有一个构造函数方法 public class glmb extends JLabel implements ActionListener { public glmb(){ Container C= getContentPane(); C.setLayout(null); myLabel.setBounds(0,0,30,30);

所以我正在用java制作一个GUI。 假设我有一个构造函数方法

        public class glmb extends JLabel implements ActionListener {
           public glmb(){
            Container C= getContentPane();
            C.setLayout(null);
                    myLabel.setBounds(0,0,30,30);
                    myLabel.setBounds(30,0,30,30);
            C.add(myLabel);
            C.add(myButt);
            MyButt.addActionListener(this);
                   setSize(400,400);
                   setVisible(true);
           }}
我在类中有一个带有ImageIcon的JLabel:

           JLabel myLabel =new JLabel(new ImageIcon("mypic1.jpg"));
带有操作侦听器的按钮,可使JLabel myLabel更改图片:

             if(e.getSource()==myButt)
             { myLabel =new JLabel(new ImageIcon("mypic2.jpg")); setSize(50,50);}
如何在JFrame中更改图片在我按下按钮后,该按钮会工作,因为帧的大小已更改(请参阅设置大小(50,50))?非常感谢。这里的java还是新手,哈哈

不用

myLabel=newjlabel(newimageicon(“mypic2.jpg”)

使用

myLabel.setIcon(新图像图标(“mypic2.jpg”)

如果我理解正确,这应该适用于您。

而不是使用

myLabel=newjlabel(newimageicon(“mypic2.jpg”)

使用

myLabel.setIcon(新图像图标(“mypic2.jpg”)

如果我理解正确,这应该适用于您。

而不是使用

myLabel=newjlabel(newimageicon(“mypic2.jpg”)

使用

myLabel.setIcon(新图像图标(“mypic2.jpg”)

如果我理解正确,这应该适用于您。

而不是使用

myLabel=newjlabel(newimageicon(“mypic2.jpg”)

使用

myLabel.setIcon(新图像图标(“mypic2.jpg”)



如果我理解正确,这应该适用于您。

您更改了对myLabel的引用,它不再指向屏幕上的内容,因此无论您对它做什么,它都不会更改屏幕上的内容。相反,只需使用myLabel的引用并使用setIcon更改其image.null布局很少是构建动态和可移植用户界面的答案,因为每个系统都有自己的字体度量和呈现差异。您应该考虑使用适当的布局管理器或复合布局,并让API处理这些脏的DealIsManDead程序员,我不理解您所说的(我在高中时是14 Y/O),但是说SETSIZE是有效的,框架改变了它的大小,因此,我如何将JLaby添加到容器中(看上面)。我在容器中添加了标签,然后将图像设置为可见。如何在同一容器中再次添加JLabel?您没有。你已经在屏幕上有了JLabel,你只需要更改你已经拥有的实例的属性就可以了How?(很抱歉,这里还是编程新手。谢谢你的耐心。顺便说一句)你已经更改了对myLabel的引用,它不再指向屏幕上的内容,所以无论你对它做什么,它都不会更改屏幕上的内容。相反,只需使用myLabel的引用并使用setIcon更改其image.null布局很少是构建动态和可移植用户界面的答案,因为每个系统都有自己的字体度量和呈现差异。您应该考虑使用适当的布局管理器或复合布局,并让API处理这些脏的DealIsManDead程序员,我不理解您所说的(我在高中时是14 Y/O),但是说SETSIZE是有效的,框架改变了它的大小,因此,我如何将JLaby添加到容器中(看上面)。我在容器中添加了标签,然后将图像设置为可见。如何在同一容器中再次添加JLabel?您没有。你已经在屏幕上有了JLabel,你只需要更改你已经拥有的实例的属性就可以了How?(很抱歉,这里还是编程新手。谢谢你的耐心。顺便说一句)你已经更改了对myLabel的引用,它不再指向屏幕上的内容,所以无论你对它做什么,它都不会更改屏幕上的内容。相反,只需使用myLabel的引用并使用setIcon更改其image.null布局很少是构建动态和可移植用户界面的答案,因为每个系统都有自己的字体度量和呈现差异。您应该考虑使用适当的布局管理器或复合布局,并让API处理这些脏的DealIsManDead程序员,我不理解您所说的(我在高中时是14 Y/O),但是说SETSIZE是有效的,框架改变了它的大小,因此,我如何将JLaby添加到容器中(看上面)。我在容器中添加了标签,然后将图像设置为可见。如何在同一容器中再次添加JLabel?您没有。你已经在屏幕上有了JLabel,你只需要更改你已经拥有的实例的属性就可以了How?(很抱歉,这里还是编程新手。谢谢你的耐心。顺便说一句)你已经更改了对myLabel的引用,它不再指向屏幕上的内容,所以无论你对它做什么,它都不会更改屏幕上的内容。相反,只需使用myLabel的引用并使用setIcon更改其image.null布局很少是构建动态和可移植用户界面的答案,因为每个系统都有自己的字体度量和呈现差异。您应该考虑使用适当的布局管理器或复合布局,并让API处理这些脏的DealIsManDead程序员,我不理解您所说的(我在高中时是14 Y/O),但是说SETSIZE是有效的,框架改变了它的大小,因此,我如何将JLaby添加到容器中(看上面)。我在容器中添加了标签,然后将图像设置为可见。如何在同一容器中再次添加JLabel?您没有。你已经在屏幕上有了JLabel,你只需要更改你已经拥有的实例的属性就可以了。如何?(很抱歉,这里还是编程新手。谢谢你的耐心,顺便说一句)是的!!!非常感谢你!!!!这里的编程还是新手,非常感谢您的帮助!是的!!!非常感谢你!!!!这里的编程还是新手,非常感谢您的帮助!是的!!!非常感谢你!!!!这里的编程还是新手,非常感谢您的帮助!是的!!!非常感谢你!!!!这里的编程还是新手,非常感谢您的帮助!