如何从 JTextPane 中获取选择

2024-01-24

我想找出 JTextPane 文本的哪一部分被选中。尝试打电话JTextPane.getSelectionStart() and JTextPane.getSelectionEnd(),但它们总是返回等于当前插入符号位置的相同值。 我的问题是什么?

我将感谢任何获得当前选择的代码示例。


看一下JTextComponent#getSelectedText() http://docs.oracle.com/javase/7/docs/api/javax/swing/text/JTextComponent.html#getSelectedText%28%29。您只需在您的实例上调用此方法即可JTextPane它会返回您选择的文本JTextPane。做了一个小例子:

import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;

public class JavaApplication101 {

    private JTextPane jTextPane;
    private JButton btnGetSelectedText;

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {

            @Override
            public void run() {
                new JavaApplication101().createAndShowUI();
            }
        });
    }

    private void createAndShowUI() {

        JFrame frame = new JFrame("Test");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        initComponents(frame.getContentPane());
        frame.pack();
        frame.setVisible(true);
    }

    private void initComponents(Container contentPane) {
        jTextPane = new JTextPane();
        btnGetSelectedText = new JButton("Get selected text");

        btnGetSelectedText.addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent e) {
                JOptionPane.showMessageDialog(null, jTextPane.getSelectedText());
            }
        });
        contentPane.add(jTextPane, BorderLayout.NORTH);
        contentPane.add(btnGetSelectedText, BorderLayout.SOUTH);
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从 JTextPane 中获取选择 的相关文章

随机推荐

  • 从 TypeScript->CommonJS 模块导出带有字体资源的全局样式

    我有一个 TypeScript React 项目 组织如下 tsconfig json package json yarn lock lerna json node modules packages ui library package j
  • 从 rfft2 数组创建 fft2 结果

    我试图通过操作 rfft2 的结果来重新创建完整 fft2 的结果 该文档指出 rfft2 仅计算正系数 因为当输入为实数时 负系数与正系数具有对称性 这对于大型数组非常有用 因为计算 rfft2 比完整的 fft2 快得多 所以下面的代码
  • 如何处理 MySQL 多边形重叠查询?

    例如 我有一个用户表 每个用户都是地图上的一个 正方形 或圆圈 我想找到这样的用户overlap地图上的另一个广场 MySQL 5 6 目前支持此功能吗 MySQL 的开发版本怎么样 请注意 我不是在寻找 查找在该正方形内有一个点的用户 我
  • 小负数四舍五入后保持符号

    即使舍入结果为零 MATLAB 似乎也会记住原始符号 由于小负值已四舍五入为零 因此该信号不再有意义 代码示例 a 0 001 ar round a 2 fprintf a 2f a rounded 2f Zero 2f n a ar 0
  • 将 MILOC 与 Fortran 结合使用:赋值中的等级 0 和 1 不兼容

    给出错误消息的版本 program hello integer a 9 integer index note no dimension here a 1 3 4 5 6 7 8 9 10 index MINLOC a MASK a gt 5
  • 如何知道动画为什么会卡顿?

    我有一些相当简单的动画 移动文本 移动椭圆等 并在全屏 1920x1080 减去任务栏 下运行 WPF Performance Suite 报告整个动画的帧速率约为 50 FPS 脏矩形加法约为 300 矩形 秒 SW 帧在 0 到 4 之
  • 神经网络:连续输出变量的 Sigmoid 激活函数

    好吧 所以我正处于中间Andrew Ng 在 coursera 上的机器学习课程 https www coursera org course ml并希望调整作为作业 4 的一部分完成的神经网络 特别是 我在作业中正确完成的神经网络如下 S
  • 谷歌地图根据窗口调整大小设置不同的缩放

    继我之前的问题之后谷歌地图响应式调整大小 https stackoverflow com questions 18444161 google maps responsive resize我想根据窗口调整大小实现不同的缩放级别 调整大小时 因
  • 在 perl 或 awk 中将每 4 列打印到一行

    您能帮助我如何将每 4 个连续行转换为一个制表符分隔的列吗 convert A 1 2 3 3 3 4 1 to A 1 2 3 3 3 4 1 执行此操作的一个简单方法是使用xargs xargs n4 lt file A 1 2 3 3
  • 使用 dplyr 包中的 group_by 和 mutate 通过 id 变量创建新的因子变量

    我有一个长格式的分层数据框 其中每一行代表关系 其中许多关系可以属于一个人 以下是一个小型示例数据集的代码 df lt data frame id as factor c 1 1 1 2 2 3 4 4 partner c 1 2 3 1
  • 如何获取android.Manifest.permission.MEDIA_CONTENT_CONTROL的android权限

    我正在尝试使用 API21 中的 MediaSessionManager 来控制设备上的音乐播放 对于使用 它说需要持有 android Manifest permission MEDIA CONTENT CONTROL public vo
  • 为什么要为多个平台编译 .NET 代码

    当 e G 创建 Windows Phone 应用程序时 我必须选择 x86 在模拟器中进行调试 并选择 ARM 在手机上进行调试 那当然是因为我的电脑运行的是 x86 具体来说是 x64 但 x64 处理器仅在寄存器长度上有所不同 如果我
  • 如何使用 T-SQL 将两个整数相除得到浮点结果?

    使用 T SQL 和 Microsoft SQL Server 当我在 2 个整数之间进行除法时 我想指定小数位数 例如 select 1 3 目前返回0 我希望它能回来0 33 就像是 select round 1 3 2 但这是行不通的
  • 寻找一种具有尽可能少的比较操作的排序算法

    我想对由人类执行比较的项目进行排序 Pictures 工作项目的优先级 对于这些任务 比较次数是性能的限制因素 需要的最少比较次数是多少 我假设 gt N for N items 哪种算法可以保证这个最小数量 为了回答这个问题 我们需要做出
  • w8 默认平板电脑设置与 WPF 布局冲突

    我有一个 WPF 桌面应用程序 我收到 W8 用户的报告 称我们应用程序中的代码完成窗口未正确对齐 我调查发现它是W8平板电脑设置中的一个设置与wpf中弹出窗口的位置冲突 Default is right handed and then t
  • 一个表可以有两个外键吗?

    我有下表 主键bold 外键输入Italic 顾客表 ID 姓名 平衡 帐户名称 帐户类型 账户类别表 帐户类型 平衡 客户明细表 帐户名称 名字 姓氏 地址 我可以在 Customer 表中有两个外键吗 如何在 MySQL 中实现这一点
  • Yii 高级 url 重写

    注意 ANYTHING ELSE 因此 我有我的控制器和操作 我希望它们能够正常运行 以响应如下示例 for UserContoller with actionList and actionEdit user list user edit
  • 使用 ModelAndView 进行 Spring MVC 验证

    我正在尝试向我的 Spring MVC 应用程序添加验证 在尝试设置验证之前 我一直使用 ModelAndView 来提供 jsp 页面 但错误消息不显示 Model Entity Table name employee public cl
  • 3 个 div 并排 - 中心一个固定宽度,其他 div 占据屏幕空间的其余部分

    我一整天都在尝试为我的网站创建一个 容器 我需要并排放置 3 个 div 中心 div 具有固定宽度 800px 并且位于屏幕中央 其他 div 必须占据左右两侧的所有剩余空间 左边的 div 将位于顶部的某个位置 右边的 div 将位于底
  • 如何从 JTextPane 中获取选择

    我想找出 JTextPane 文本的哪一部分被选中 尝试打电话JTextPane getSelectionStart and JTextPane getSelectionEnd 但它们总是返回等于当前插入符号位置的相同值 我的问题是什么 我