黑马程序员技术交流社区

标题: 在eclipse运行JLabel [打印本页]

作者: 创出一片辉煌    时间: 2012-7-29 23:30
标题: 在eclipse运行JLabel
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Point;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class FrameDemo {
public static void main(String[] args) {
  JFrame f=new JFrame("框架");
  Dimension d=new Dimension(230,80);
  f.setSize(d);
  f.setBackground(Color.blue);
  Point p=new Point(300,200);
        f.setLocation(p);
        JLabel l=new JLabel("haha",JLabel.EAST);
        f.add(l);
        f.setVisible(true);
}
}

但是程序却报错Exception in thread "main" java.lang.IllegalArgumentException: horizontalAlignment
at javax.swing.JLabel.checkHorizontalKey(Unknown Source)
at javax.swing.JLabel.setHorizontalAlignment(Unknown Source)
at javax.swing.JLabel.<init>(Unknown Source)
at javax.swing.JLabel.<init>(Unknown Source)
at gui.FrameDemo.main(FrameDemo.java:15)

不会是eclipse又却什么jar吧....求老师指点

同时问一下老师 用Eclipse IDE for Java EE Developers这个版本好吗,这个版本是不是最全的
作者: 于星星    时间: 2012-7-30 00:20
本帖最后由 于星星 于 2012-7-30 00:23 编辑

报的是new JLabel("haha",JLabel.EAST);参数类型错误。我查了一下jdk文档:
JLabel
public JLabel(String text,
              int horizontalAlignment)Creates a JLabel instance with the specified text and horizontal alignment. The label is
centered vertically in its display area.
Parameters:
text - The text to be displayed by the label.
horizontalAlignment - One of the following constants defined in SwingConstants: LEFT, CENTER, RIGHT, LEADING or TRAILING.

也就是说JLabel的这个构造函数的第二个参数是文本的对齐方式,只有左对齐,居中,右对齐...等方式,而你写的JLabel.EAST,该让它
怎么放文本呢?不正确的参数,它不认识啊,当然会报错了。修改如下图,果断不报错了,哈哈!

20.jpg (113.34 KB, 下载次数: 47)

20.jpg

21.jpg (39.72 KB, 下载次数: 28)

21.jpg





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2