Tag: jtextarea

jTextArea作为IO控制台

如何将用户输入(仅用户输入)发送到输出流? 我目前正在使用密钥列表, jTextArea console = new jTextArea; console.addKeyListener(new java.awt.event.KeyAdapter() { public void keyReleased(java.awt.event.KeyEvent e){ //save the last lines for console to variable input if(e.getKeyCode() == java.awt.event.KeyEvent.VK_ENTER){ try { int line = console.getLineCount() -2; int start = console.getLineStartOffset(line); int end = console.getLineEndOffset(line); input = console.getText(start, end – start); send = true; } catch (Exception e1) { […]

使JScrollPane控制多个组件

对于我的应用程序,我正在设计脚本编辑器。 目前我有一个JPanel ,它包含另一个保存行号(位于左侧)的JPanel ,以及一个JTextArea ,用于允许用户键入其代码(位于右侧)。 目前,我已在JTextArea上实现了一个JScrollPane ,以允许用户滚动其代码。 对于包含行号的JPanel ,每次用户按下回车键时,它们都会递增。 但是,问题是我想要相同的JScrollPane(在JTextArea上实现的那个)来控制行号JPanel的滚动; 即,当用户在JTextArea上滚动时,行号JPanel也应该滚动。 但由于行号保存在JPanel中,我无法将该组件添加到JTextArea。 包含JTextArea和行号JPanel的JPanel类的构造函数: private ScriptEditor() { setBackground(Color.WHITE); lineNumPanel = new LineNumberPanel(); scriptArea = new JTextArea(); scriptArea.setLineWrap(true); scriptArea.setFont(new Font(Font.SANS_SERIF, Font.PLAIN, 15)); scriptArea.setMargin(new Insets(3, 10, 0, 10)); JScrollPane scrollPane = new JScrollPane(scriptArea); scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); scrollPane.setPreferredSize(new Dimension(width, height)); scriptArea.addKeyListener(this); add(lineNumPanel); add(scrollPane); } 行号JPanel的构造函数,它在其自身中添加JLabel以表示行号: public LineNumberPanel() { setPreferredSize(new Dimension(width, height)); […]

在JTextArea或JTextPane中居中文本 – 水平文本对齐

有没有办法为JTextArea创建水平居中的文本,就像使用JTextField一样? setHorizontalAlignment(JTextField.CENTER); 有没有办法可以用多行文本区域完成同样的事情? 我用JTextArea找不到它的方法,那么还有其他选择吗? 的JTextPane? 如果是这样,怎么样?

在JtextArea的末尾添加一个新行

我有一个文本区域,其中包含一些文本,我想再次添加一些行(第一行+我要添加的其他行),但它不起作用。 我现在这样做的方式是删除旧文本并仅显示新行。

如何将输出流设置为TextArea

我正在尝试为程序创建GUI面板,我想要通常打印到我的命令提示符的所有内容,以打印到TextArea对象。 我的GUI面板大部分都是格式化的,我无法将文本打印到TextArea,这里是我的文件: package guipanel; import javax.swing.*; import java.awt.*; import java.io.*; /** * * @author Dan */ public class GUIPanel extends JFrame { public GUIPanel() { initComponents(); } private void setOutputStream(boolean catchErrors) { System.setOut(aPrintStream); setVisible(true); requestFocus(); if (catchErrors) { System.setErr(aPrintStream); } } private void addTabs(JTabbedPane jTabbedPane1) { JPanel jPanel1 = new JPanel(); JPanel jPanel2 = new […]

如何在Java Swing TextArea中更改突出显示颜色? 并且,更改与突出显示位置对应的文本的开头

问题1:通过使用defaulthighlighter,我可以使聚焦线变为蓝色。 现在我想把它换成其他颜色。 有谁知道如何更改此参数? – – 解决了 问题2:pos是我想要突出显示的子字符串的起始索引。 我用setCaretPosition(pos); 更新显示内容。 但它总是出现在窗口的底部。 我想把它放在最顶层。 谁能告诉我如何处理? 我使用一个演示来显示我的问题: import java.awt.Color; import java.net.MalformedURLException; import javax.swing.JFrame; import javax.swing.JScrollPane; import javax.swing.JTextArea; import javax.swing.SwingUtilities; import javax.swing.text.BadLocationException; import javax.swing.text.DefaultHighlighter; public class Test { public static void main(final String[] args) throws MalformedURLException { SwingUtilities.invokeLater(new Runnable() { @Override public void run() { try { init(); } catch […]

带有背景图像的JTextArea的内部填充

我的最终目标是拥有一个带有背景图像的JTextArea 。 我发现在线代码向我展示了如何做到这一点,但现在我遇到的问题是文本位于图像之上。 这就是我的意思: 有什么方法可以添加一种向内缩进,以便文本不与图像的边缘重叠? 这是原始评论气泡图像。 这是代码: import java.awt.BorderLayout; import java.awt.Container; import java.awt.Graphics; import java.awt.Image; import javax.swing.GrayFilter; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JScrollPane; import javax.swing.JTextArea; public class myBackgroundSample { String file; public myBackgroundSample(String i) { file = i; setItUp(); } public void setItUp() { final ImageIcon imageIcon = new ImageIcon(file); JTextArea textArea = new JTextArea() […]

从JTextArea获取密钥

我只想做,如果我在JtextArea.automatically’}’中按'{‘这个键,那么这也将是打印的。 if(evt.KEY_PRESSED == ‘{‘) System.out.print(“}”); 这没关系吗?