我正在寻找一种方法来计算JTextPane中给定文本位置的行号,并启用包装.
例:
这非常非常非常非常非常非常非常非常非常非常非常非常非常长.
这是另一个非常非常非常非常非常非常非常非常非常非常非常非常非常长的路线.|
光标位于第四行,而不是两行.
有人可以为我提供该方法的实现:
int getLineNumber(JTextPane pane, int pos)
{
return ???
}
Run Code Online (Sandbox Code Playgroud) 我正在创建一个SQL编辑器.我正在使用JTextPane作为编辑器.我想为Eclipse等表名等实现AutoCompletion.
有没有办法使JTextPane中的文本看起来类似于控制台输出的文本?我的意思是,基本上,每个字符的宽度是一样的,这样像ASCII艺术或间距缩进这样的东西都能正常工作.
例如,目前,如果我输入"First"然后输入5个空格,然后在新行"Second"上再输入4个空格,则这两行不会在同一位置结束,因此如果这些空格后面有文本,文本不会对齐.
我不知道它是否会改变任何东西,但JComponents也将包含在JTextPane中.
我有一个JTextPane内容类型text/plain.我设置了一些文本,JTextPane它包含一些显示的文本URLs.当我将鼠标指向该文本时,我想更改鼠标指针.这个功能可以实现吗?注意:我有JTextPaneas 的内容text/plain.它不能改为text/html
感谢名单
我JTextPane在JDialog 的swing 中使用了一个html页面.
在html中我有一个<a href="mailto:email@adress.com">John</a>
当我通过浏览器查看网页时鼠标转到链接我可以看到mailto.
当我按下链接时,我收到错误"没有安装默认邮件客户端",但我想这是由于在我的电脑中我还没有配置Outlook或其他程序.
当我从Swing应用程序打开JDialog时,我看到John突出显示为链接,但是当我按下链接时没有任何反应.
我希望得到与浏览器相同的错误消息.
所以我的问题是可以通过Swing应用程序打开链接吗?
谢谢
非常自我解释,我有一个HTML字符串,我如何将它绘制到JEditorPane/JTextPane?
为了在Java Swing GUI上显示信息,我使用了JLabel组件和的混合JTextPanes.
如下图所示,JLabels除了右下角标有红色和黄色的标签外,所有标签都是如此.这是一个JTextPane,因为我不知道渲染前的文本长度,它必须包装(这不是在一个工作JLabel,对吧?).
左列右对齐,右边距为5,右列左边对齐,边距为零.
在Eclipse WindowBuilder和Windows 7渲染中,JTextPane显然有一个小的填充,我无法删除.
令人惊讶的是,这个填充没有在我的Mac(Mountain Lion)上显示,并且JTextPane完全对齐.
有没有办法在Windows和Mac上实现相同的对齐外观?为什么JTextPane组件在窗户上有这个烦人的填充?
是否有可能获得输入文本的高度JTextPane?像素会很棒,但任何代表它的价值都可以.例如我输入了JTextPane这个:
Lorem Ipsum只是印刷和排版行业的虚拟文本.自16世纪以来,Lorem Ipsum一直是业界标准的虚拟文本,当时一台未知的打印机采用了类型的厨房,并将其拼凑成一本类型的样本.它不仅存在了五个世纪,而且还延续了电子排版,基本保持不变.它在20世纪60年代随着包含Lorem Ipsum段落的Letraset表格的推出而普及,最近还推出了包括Lorem Ipsum版本在内的Aldus PageMaker等桌面出版软件.
有没有办法获得它的长度值(不是它有多少行)?我需要这个,因为如果我在其中一行中输入图片,总高度会发生变化,我希望能够知道它的确切变化程度.的JTextPane,我用了一个StyledDocument,没有HTML.我做了一个SSCCE而不是图像,我使用了两种不同的字体大小来显示2的高度之间的差异JTextPanes.
public class Fonts extends JFrame {
private JPanel contentPane;
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Fonts frame = new Fonts();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
public Fonts() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
JTextPane textPane …Run Code Online (Sandbox Code Playgroud) 我可以写印地语,乌尔都语JTextPane,但不能在文本窗格中编写其他印度语区域语言.我还下载了这些语言的字体,但它不起作用.
如何写古吉拉特语,旁遮普语等印度语区域语言JTextPane?
更新:
要求的一段代码:
public class NewClass {
public static void main(String args[]) {
JFrame j = new JFrame("Hello!");
j.setSize(200, 200);
JTextPane k = new JTextPane();
k.setFont(new Font("Shree-Guj-0768W", Font.PLAIN, 17));
j.add(k); j.setVisible(true);
}
}
Run Code Online (Sandbox Code Playgroud)
我在jtextpane中设置了gujrati(一种语言)字体,现有内容出现在gujrati中,但是当我在jtextpane框中写入时出现.我们可以在同一个Jtextpane中使用多种印度区域语言吗?
我遇到了一个奇怪的问题.我在JscrollPane中有一个JtextPane,它在分发列表中显示大字符串,并且在我使用eclipse运行程序时正确包装代码但是当我在使用java webstart运行相同程序时它停止包装文本.你能告诉我该怎么办.这是代码.
private JScrollPane displayResults(String distributionList) {
// TODO Auto-generated method stub
JTextPane textArea = new JTextPane();
textArea.setText(distributionList);
textArea.setEditable(false);
JScrollPane scrollPane = new JScrollPane(textArea);
scrollPane.setPreferredSize( new Dimension( 500, 500 ) );
return scrollPane;
}
Run Code Online (Sandbox Code Playgroud)
}
java ×10
jtextpane ×10
swing ×8
html ×2
autocomplete ×1
console ×1
fonts ×1
format ×1
jeditorpane ×1
jlabel ×1
mouseevent ×1
text ×1