我搜索过关于LABEL的换行问题,但是在我自己的程序中,我应用不了,想请问一下,在JAVA里面,Label应该怎样换行。
Label的内容是取值出来的,不是确定的,应该怎样做???就像这样,我要从ta2中取出文字,放进x1中,在l18中显示文字,但要换行,应该怎样改?请教一下我。谢谢!!!
x1=ta2.getText();
l18.setText("  "+x1);

解决方案 »

  1.   

    可不可以这样:
    118.setText("   \n"+x1);
    呵呵,纯粹新手,做的烂不要骂我哈
    等待后面的高手示范
    疯狂学习中!!
      

  2.   

    我也是新手,最近才开始学JAVA,但是,我可以告诉你,这样是不行的,因为我要的是里面的内容自动换行
      

  3.   

    x1=ta2.getText();
    l18.setText("  "+"\n"+x1);
      

  4.   

    这样都可以???
    我的意思是,如果我ta2里面有100个字,但Label里面只可以一行放50个,我要Label自动根据页面换行。
      

  5.   

    ta2里面究竟有多少个字是不知的,是用户输入的,字数或多或少。我希望Label可以根据输入的内容进行换行。
      

  6.   

    你的label应该有宽度吧?能不能根据字数进行截取然后用/n换行??
      

  7.   

    我的label是默认宽度,并没有特别的设置。我只希望可以依据窗口的大小而进行换行。就像在applet中的输出就可以依据窗口的大小而进行换行。而我的程序是用窗口输出,我想像在applet一样
      

  8.   

    用网页格式<html>...<br>...<br></html>
      

  9.   

    用<html>...<br>...<br></html>换行是因为知道字符串的长度,自己进行排版,但是我不知道字符串长度和内容,是通过用户的输入来转换的.
      

  10.   

    你的用户输入完了,你是取到什么里面?string?char[]?这些都是有size or length的,你可以用jLabel.getWidth()取得jLabel的宽度,然后按照上边说的除一下就可以了。这样你就可以知道应该在第几个后面换行了,然后用sub截取就可以了吧?
    应该是,偶也是新手不对莫打
      

  11.   

    计算一个字符的点阵大小
    int width = new Label().getFontMetrics(font).stringWidth(
    "0123456789abcdefghijklmnopqrstuvwxyz,./ABCDEFGHIJKLMNOPQRSTUVWXYZ") / 65);
    就可以算出JLable一行可以存多少个字符,用HTML来分行显示.