2011-08-04 24 views
2

私はJTextFieldを変更するプログラムを作成しています。だから、JComboBoxからのフォント、サイズ、および属性(太字など)を持つWord文書に似ています。明らかに私のものは非常に小さく、1行(A JTextField)でしか動作しません。私が得ている問題は、特定の属性を持つフィールドにいくつか書き込んだ後に、異なる属性を持つ単語を追加したい場合、追加した新しい部分だけでなく、テキストフィールド全体を変更します。私はそれで問題がJTextfieldのフォントと属性の問題

Writer.addKeyListener(new KeyAdapter() { 
     @Override 
     public void keyTyped(KeyEvent e) { 
      if((e.getKeyChar() >= e.VK_A && e.getKeyChar()<= e.VK_Z) || (e.getKeyChar() >= 'a' && e.getKeyChar()<='z')|| e.getKeyChar() == '\b') // Checks to make sure No Numbers 
      { 
       Writer.setEditable(true); 

      } 
      else 
      { 
       Writer.setEditable(false); 
      } 

      if(font.equals("Arial")) 
      { 
       if(size.equals("8")) 
       { 
        setSize = 8; 
       } 
       else if(size.equals("10")) 
       { 
        setSize = 10; 
       } 
       else if(size.equals("12")) 
       { 
        setSize = 12; 
       } 

       if(color.equals("Black")) 
       { 
        setColor = Color.BLACK; 
       } 
       else if(color.equals("Blue")) 
       { 
        setColor = Color.BLUE; 
       } 
       else if(color.equals("Red")) 
       { 
        setColor = Color.red; 
       } 

       Font font = new Font("Arial", setAttribute, setSize); 
       Writer.setFont(font); // I Know that this sets the font everytime, so i'm pretty sure this is where my problem is. 
       Writer.setForeground(setColor); 
      } 

こと、新たに入力された文字は、前の文字とは異なるフォントを持つことができますので、私は変更を加えることができる方法上の任意のアイデアを知っています。

答えて

1

JTextFieldを使用すると、HTMLを使用できます。新しいHTMLコードを解析して挿入するのには少し時間がかかるかもしれませんが、そのようにすることは可能かもしれません。 styled textため

関連する問題