2013-03-10 31 views
0

我在someFrame中实例化了somePanel1,somePanel2somePanel3跨JFrame中的多个JPanel的DrawString

如果我做了drawStringsomePanel形式,我怎样才能在somePanel1somePanel2somePanel3输出有所不同。

例如g.drawString("X", x, y);在全部三个somePanel s中都放置了X。我如何获得:

  • somePanel1输出X
  • somePanel2输出Y,并且
  • somePanel3输出Z

回答

1

来自您的评论SomePanel是自动生成的。你可以简单的添加一个setter方法,以允许修改的消息:

class SomePanel extends JPanel { 

    // message to be used in drawString 
    private String message; 

    public void setMessage(String message) { 
     this.message = message; 
    } 
    ... 
} 

然后用

somePanel1.setMessage("X"); 
... 
+0

这几乎是我有什么。我想我真正要问的是如何“实例化传递'X','Y','Z'”? – 2013-03-10 17:44:33

+0

对不起,但是,某些Panel1是以someFrame的形式自动创建的... 'private main somePanel somePanel1;' 所以我不能在somePane窗体中使用它。如果我使用 'somePanel1 =新SomePanel( “X”);在someFrame' 我得到一个无法找到符号错误 – 2013-03-10 18:03:34

+0

我的意思是'私人Main.somePanel somePanel1;' – 2013-03-10 18:10:32