问题描述
- java点击一个按钮怎么改变另一个窗口标签内容
- 这是类A的按钮
JButton pingguo = new JButton(""苹果"");
pingguo.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {new FrameP(); } }); pingguo.setForeground(new Color(255 99 71)); pingguo.setFont(new Font(""宋体"" Font.PLAIN 14)); pingguo.setBounds(22 5 93 50); panel_2.add(pingguo); 这是类b中标签 JLabel pingguo = new JLabel(); pingguo.setHorizontalAlignment(SwingConstants.CENTER); pingguo.setBounds(10 10 54 15); frameP.getContentPane().add(pingguo);
我想通过点击类A的按钮,然后设置类B标签的显示内容
解决方案
两种解决方案:
1.中央控制器,在control中持有类A和类B中需要操作组件的引用或直接就是类A和类B的引用
2.交互引用,在类A中持有类B的引用,在类B中持有类A的引用
建议使用中央控制器的方式,这样更清晰,结构与操作分离
解决方案二:
从一个窗口获取另一个窗口点击的按钮
解决方案三:
那你需要获取到另外一个窗口对象类似这个button B一样进行操作
解决方案四:
很多种方法丫。我说个最傻白甜的吧,可以在类b中设置一个get方法,向外提供操作类b中JLabel pingguo这个对象。
比如在类b中
public JLabel getLabel(){ return this.pingguo //是类b中的pingguo变量哦! }
然后在类A的JButton事件监听中通过刚刚的方法获得B类的这个成员,不就可以操作了吗。
时间: 2024-08-04 02:16:54