我对我正在制作的一些简单控制台有疑问。我知道可以使用函数setText()将html内容添加到JTextPane以及先前设置的setContentType("text/html");。但是为了我的应用程序的需要,我需要直接使用javax.swing.text.Document,这是我通过getDocument()函数获得的(例如删除行并附加新行,是的这是我正在制作的一种控制台,我已经在以前的StackOverflow问题中看到了几个例子,但没有一个能满足我的需要)。所以,我想要的是将HTML插入到文档中并在我的JTextPane上正确呈现它。问题是当我使用insertString()方
我尝试了超过2天来实现对文本编辑器窗口的特定要求......不幸的是到目前为止没有成功:(目标是获得一个文本编辑器窗口,它将突出显示当前行,就像其他文本编辑器一样。当前行是指当前光标/插入符号所在的行。我已经找到了两种不同的方法,但不幸的是我无法采用它们,因此它们可以按预期工作。第一种方法是覆盖DefaultHighlighter(http://snippets.dzone.com/posts/show/6688)。在第二种方法中,HighlighterPainter将被覆盖(http://www.jroller.com/santhosh/date/20050622)。现在我正尝试在我
如何使JTextPane仅在滚动条位于底部且滚动锁定关闭时自动滚动?这不应该与插入符号有任何关系,这似乎是我在谷歌上发现的。:( 最佳答案 我认为下面的程序完全符合您的要求,但可能需要注意一点:您不能在文本区域中键入内容。所以这对日志查看器来说是好的,但不是交互式控制台。代码运行时间有点长,因为我已将其制作成该方法的现成运行演示。我建议按原样运行程序并检查行为。如果这种行为适合你,那么花点时间研究代码。我在代码中加入了注释以突出显示一些更重要的部分。2013-07-17更新:您可能还想查看randomdude在页面下方的单独回答中的
我有两个不同的编辑器使用JTextPane,在Java7中有奇怪的错误,这些错误在以前的JVM版本中没有出现。它发生在包含样式文本或组件的长行中。这是一个演示此错误的示例。在此示例中,每次插入一个字符时,默认样式将应用于所有文本。我使用JDK1.7.0_04对其进行了测试。importjava.awt.BorderLayout;importjavax.swing.*;importjavax.swing.event.*;importjavax.swing.text.*;publicclassBugWrapJava7extendsJFrame{JTextPanejtp;StyledDocu
我想要一个带有滚动条的JTextPane,我该怎么做?谢谢。 最佳答案 要在新的JTextPane上插入滚动条,只需使用JScrollPane:JTextPanetxt=newJTextPane();JScrollPanejsp=newJScrollPane(txt);JTextPaneAPI:http://download.oracle.com/javase/6/docs/api/javax/swing/JTextPane.htmlJScrollPaneAPI:http://download.oracle.com/javase/6
我到处都能看到人们找到在JTextPane中启用自动换行的方法的答案,但它们都不适合我。我正在使用HTMLDocument(显示"text/html"内容),但到目前为止我没有发现它可以正常工作。JTextPane总是使JScrollPane水平滚动。我需要JTextPane可滚动,但只能垂直滚动。谁有一个可以显示HTML内容的JTextPane换行的可行演示? 最佳答案 这个问题有几个重复的问题和很多答案,但我发现没有一个问题有单一组件的解决方案。此类基于Stanislav对纯文本换行的类似问题的解决方案之一,并进行了一些更改。此
我正在使用字符串生成器将文本附加到我的JTextPane,我已将内容类型设置为pane.setContentType("text/html");但实际上我的JTextPane上没有显示文本.这是我的附加示例:buildSomething.append(""+Birthday+"");我做错了什么吗?我该如何修复它? 最佳答案 每次JTextPane.setText(...)被调用的新内容类型被确定。文本以""开头你有HTML。创建了一个新文档,在您的例子中是HTMLDocument。@mKorbel:以下内容每次都为JTextPan
当您setContentType("text/html")时,它仅适用于通过JTextPane.setText()设置的文本。通过样式放入JTextPane的所有其他文本对内容类型“免疫”。我的意思是:privatefinalString[]messages={"firstmsg","secondmsgyeah","thirdmsg"};publicTestGUI()throwsBadLocationException{JTextPanetextPane=newJTextPane();textPane.setEditable(false);textPane.setContentType
我正在使用JTextPane来显示一些包含带边框表格的HTML。我希望它有一个简单的1像素边框。我尝试使用style="border:1pxsolid;border-collapse:collapse"。这适用于Web浏览器,但不适用于JTextPane。有没有什么方法可以在JTextPane中使用HTML来创建一个简单的1像素表格边框? 最佳答案 结合使用publicstaticfinalStringTD="";publicstaticfinalStringTABLE_PROP="style='border:1pxblacksol
基本上,我有一个JTextPane来保存一些我希望设置样式的文本。JTextArea本来更适合我使用,但我听说您不能在其中设置文本样式?但是,JTextPane的样式似乎不正确。例如,以下代码仅返回包含HTML:publicstaticvoidmain(String[]args){JFramej=newJFrame("Hello!");j.setSize(200,200);JTextPanek=newJTextPane();k.setText("Hey!");j.add(k);j.setVisible(true);}当用户与界面交互时,我希望能够在JTextPane中设置一些文本的样式