关于JTextPane英文和数字自动换行问题

dison_ 2017-04-01 03:28:41
问题说明:
JTextPane本身是会自动换行的,但是当我一行全部输入数字或者英文的时候是不会自动换行的。

尝试过用设置
textField.setContentType("text/html"); 确实是可以换行!

但是却无法获取插入的图片。请问各位有什么好的建议或者方案吗?
...全文
252 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
dison_ 2017-04-05
  • 打赏
  • 举报
回复
现已解决Jtextpane不能换行英文和数字的问题
public class WarpEditorKit extends StyledEditorKit{
	/**
	 * 
	 * @Fields serialVersionUID : TODO
	 */
	private static final long serialVersionUID = 1L;
	
	  private ViewFactory defaultFactory = new WarpColumnFactory();  
	  
      @Override  
      public ViewFactory getViewFactory() {  
          return defaultFactory;  
      }  
      
      private class WarpColumnFactory implements ViewFactory {  
    	  
          public View create(Element elem) {  
              String kind = elem.getName();  
              if (kind != null) {  
                  if (kind.equals(AbstractDocument.ContentElementName)) {  
                      return new WarpLabelView(elem);  
                  } else if (kind.equals(AbstractDocument.ParagraphElementName)) {  
                      return new ParagraphView(elem);  
                  } else if (kind.equals(AbstractDocument.SectionElementName)) {  
                      return new BoxView(elem, View.Y_AXIS);  
                  } else if (kind.equals(StyleConstants.ComponentElementName)) {  
                      return new ComponentView(elem);  
                  } else if (kind.equals(StyleConstants.IconElementName)) {  
                      return new IconView(elem);  
                  }  
              }  
    
              // default to text display  
              return new LabelView(elem);  
          }  
      }  
    
      private class WarpLabelView extends LabelView {  
    
          public WarpLabelView(Element elem) {  
              super(elem);  
          }  
    
          @Override  
          public float getMinimumSpan(int axis) {  
              switch (axis) {  
                  case View.X_AXIS:  
                      return 0;  
                  case View.Y_AXIS:  
                      return super.getMinimumSpan(axis);  
                  default:  
                      throw new IllegalArgumentException("Invalid axis: " + axis);  
              }  
          }  
      }  

}
然后
textField.setEditorKit(new WarpEditorKit());  
即可!

51,411

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧