你看看API吧,我在家里机器上没有

解决方案 »

  1.   


    第二个问题
      JText Pane jtp;
      Container c=getContentPane();
      jtp=new JTextPane();
      c.add(jtp);
      jtp.addMouseListener(this);
      jtp.addMouseMotionListener(this);   public void mouseClicked(MouseEvent e)
       {
          if(e.getClickCount()==1)
          {
             jtp.setText("\n"+e.getX()+","+e.getY());
          }
       }
       public void mouseMoved(MouseEvent e){}
       public void mouseDragged(MouseEvent e){}
       public void mousePressed(MouseEvent e){}
       public void mouseExited(MouseEvent e){}
       public void mouseReleased(MouseEvent e){}
       public void mouseEntered(MouseEvent e){}
    }
      

  2.   

    1.我在使用JTextPane发现,当一行字符超过控件宽度后,便自动换行,请问如何不自动换行?
    JTextPane textPane = new JTextPane();
    ...
    textPane.setLineWrap(true); //设置自动换行
    textPane.setWrapStyleWord; //设置换行时不会切断单词
    ...
      

  3.   

    to  Z_Beginner(初学者) :
        我要取的是光标的位置,不是鼠标的位置,因此你给的答案不对。
     zhuyinli(Luke^_^) :
        你的这答案并不是针对JTextPane的,而是针对JTextArea
    各位大侠,我问的这两个问题并不是简单的查查api就能解决的,因此,才来这里麻烦大家的。如果哪位确能解决,还请帮忙!
      

  4.   

    JTextPane能够换行,需要重载如下两个函数:
    /**
     * overridden from JEditorPane
     * to suppress line wraps
     *
     * @see setSize
     */
    public boolean getScrollableTracksViewportWidth() {
    return false;
    } /**
     * overridden from JEditorPane
     * to suppress line wraps
     *
     * @see getScrollableTracksViewportWidth
     */
    public void setSize(Dimension d) {
    d.width = 1000; // 行的宽度需要你计算文本中最宽的一行是多少
    super.setSize(d);
    }