繁体   English   中英

在jpanel上绘制字符时出错

[英]Error drawing character on jpanel

我正在制作一个游戏服务器,登录服务器已经完成,现在我正在角色服务器上工作。

我的问题是在客户端上,我收到了所有值,然后想根据这些值创建一个字符。 这是我的jPanel代码。

public class createChar extends JPanel {
   private final int ID;
   private String user;
   private int level;
   private int exp;
   private float r;
   private float gr;
   private float b;

public createChar(String username,int ID,int level,int exp,float r,float g,float b){
    this.ID = ID;
    this.user = username;
    this.level = level;
    this.exp = exp;
    this.r =(int) r;
    this.gr =(int) g;
    this.b =(int) b;
    setVisible(true);
}


@Override
public void paintComponent(Graphics g){
    super.paintComponent(g);
    Color clr = new Color(r,gr,b);
    g.setColor(clr);
    g.fillRect(50, 50, 100, 100);   
 super.repaint();

}

在这里,我添加了jPanel:

                           while((fChara = cin.readLine()) != null){
                           System.out.println("[CHARAS]" + fChara);
                          if (fChara.contains("-")){

                       Scanner cs = new Scanner(fChara);
                        cs.useDelimiter(":");

                          String schar = cs.next();



                       System.out.println( "schar:" +schar);

                      //   cs.delimiter();
                    int id = cs.nextInt();
                    String cname = cs.next();
                       System.out.println("ID:" + id);
                    int level = cs.nextInt();
                    int exp = cs.nextInt();
                    int r = cs.nextInt();
                    int g = cs.nextInt();
                    int b = cs.nextInt();

                    System.out.println( id +":" + cname+":" + level+":" + exp+":" + r+":" +g+":" +b);
                          createChar chara = new createChar(cname,id,level,exp,r,g,b);  
                       jPanel1.add(chara);

                       }

谢谢!

您是否注意到您的问题中没有问题? 猜测:您的面板未显示在父容器中,对吗? 添加/删除组件后,有必要调用容器的validate方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM