0

私はあなたが完全な式を書くことができ、それからあなたの答えを計算できる関数電卓を作っています. 式を表示するには、JEditorPane を使用します。

主な問題は次のとおりです。

  1. 分数を手書きで表示する(分子が分母)
  2. 権力の表示

上記の2つの問題に対して私が見つけた解決策は次のとおりです。

  1. このeditorKit を使用して分数を表示します。
  2. HTML を使用して権限を表示します。

現在、私が直面している問題は、HTMLEditorKit と FractionEditorKit の 2 つの editorKit を使用する必要があり、FractionEditorKit から HTMLEditorKit に切り替えると、書式設定がすべて失われることです。

                 editorPane.setEditorKit(new FractionEditorKit());
                 StyledDocument doc=(StyledDocument) editorPane.getDocument();
                 SimpleAttributeSet attrs=new SimpleAttributeSet();
                  attrs.addAttribute(FractionEditorKit.FRACTION_ATTRIBUTE_NAME,"");
                SimpleAttributeSet normalAttrs=new SimpleAttributeSet();
                try {

                    doc.insertString(doc.getLength(), "Fraction ", normalAttrs);
                doc.insertString(doc.getLength(), String.format("1234\r5678"), attrs);
                }

                catch (BadLocationException ex) {
                }

                }

HTMLEditorKit kitH = new HTMLEditorKit();
HTMLDocument docH=(HTMLDocument) editorPane.getDocument();
editorPane.setEditorKit(kitH);
            editorPane.setDocument(docH);


                try {
                    kitH.insertHTML(docH, editorPane.getDocument().getLength(), "<HTML>10<sup>4</sup></HTML>",0,0,null);

                } catch (BadLocationException e1) {
                    e1.printStackTrace();
                } catch (IOException e1) {
                    e1.printStackTrace();
                }
4

0 に答える 0