是否可以在JComponent的左侧(或右侧)放置标题?

我不是说理由,而是真正的立场。

我在与JComponent关联的TitledBorder上尝试了setTitlePosition(TitledBorder.LEFT),但似乎不起作用(也许仅出于论证?)

如果不可能,那么有没有人有一个非常简单的方法来达到这种效果?

我想写一些这样的代码:

 TitledBorder titleB = new TitledBorder(description);
 titleB.setTitlePosition(LEFT);

最佳答案

我猜您有一个IllegalArgumentException,因为LEFT显然不是有效职位。这是TitledBorder.setTitlePosition的代码:

  switch (titlePosition) {
      case ABOVE_TOP:
      case TOP:
      case BELOW_TOP:
      case ABOVE_BOTTOM:
      case BOTTOM:
      case BELOW_BOTTOM:
      case DEFAULT_POSITION:
            this.titlePosition = titlePosition;
            break;
      default:
        throw new IllegalArgumentException(titlePosition +
                                    " is not a valid title position.");
    }


我认为将组件的标题设置为左/右不存在OOTB。但是,您可以创建自己的边框,也可以(可能)简化您自己的带有标签的组件的垂直显示文本,然后使用BorderLayout LEFT / RIGHT将这个自定义组件添加到面板等中。

格里茨
斯蒂金

关于java - JComponent左侧的SetTitlePosition,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5231724/

10-10 01:09