en_reading 2016-07-04 14:56 采纳率: 0%
浏览 4153

Java两个类之间传值问题(初学)

背景简介

我在试着做飞机大战,想用jlabel做一个得分显示。
整个界面用JFrame搭建,两个jpanel,一号Jpanel用paint()画游戏界面,二号Jpanel用来放置jlabel,即用来显示分数。【我方飞机】、【敌机】、【子弹】、【爆炸效果】、【开始】、【画布】共六个类,paint()就在【画布】中,前四个类只有属性器和方法,【画布】里创建我方飞机、敌机和子弹的对象和其移动方法。

这里是正题

  1. 【爆炸效果】里存在让碰撞后的子弹和敌机消失的方法,在此中需要调用Score值,增加分数。
  2. 【画布】里的paint()联合repaint()会重复画图,调用【爆炸效果】(每次都是new Bomb(4个参数))。
  3. 【开始】包含main入口,继承jframe,构造方法里做好基本局部,jpanel和jlabel就是在这里加的。

4.我在【画布】里另创一类GetScore继承jlabel,初始化int Score=0,属性器getter和setter完全正常,打印输出显示分数累加正常。传值到【开始】的一个方法start(int a)中,该方法打印输出同样显示分数值正常。但实际效果却是jlabel一直显示得分: 0.

求教

如何能让jlabel变动,详略均可,谢谢!

    import java.awt.BorderLayout;
    import javax.swing.JFrame;
    import javax.swing.JPanel;

    public class Start extends JFrame{
    //这是画布类
    Interface in = new Interface();
    JPanel jp = new JPanel();
    //得分方法类的实例
    GetScore jl = new GetScore();
    public String getJl() {
        return jl.getText();
    }

    public void setJl(String str) {
        jl.setText(str); 
    }

    Start(){
        setTitle("飞机大战");
        setSize(700, 800);
        setBounds(0, 0, 600, 800);
        setResizable(false);
        setVisible(true);
        setLocationRelativeTo(null);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setLayout(new BorderLayout());
        //将显示分数的jlabel添加到面板中
        jp.add(jl);
        new Thread(in).start();
        this.add(in,BorderLayout.CENTER);
        jp.setSize(100, 700);
        this.add(jp,BorderLayout.WEST);
        this.addKeyListener(in);
    }
    Start(int a){
        setJl("得分: "+a);
        System.out.println("jl:"+jl.getText());
    }
    public static void main(String[] args) {
        new Start();
    }

    }

图片说明

  • 写回答

3条回答

  • devmiao 2016-07-04 15:58
    关注
    评论

报告相同问题?

悬赏问题

  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题
  • ¥15 Python时间序列如何拟合疏系数模型