java - 单击在 Java 中添加动态文本区域类对象

标签 java swing user-interface text jpanel

标题有点困惑,但我将使用 Java 和 Jframe。基本上,我希望能够单击表单上的任意位置并显示“文本区域/框”(可能使用 JTextField 或 JTextArea ?)。我希望用户也能够编辑、删除和移动这个字符串。

我想我需要一个 Action 监听器来监听表单上的点击。每次点击都会要求创建一个新的文本“框”。我不确定如何使用户可以编辑、删除或移动此“框”。

我也需要一种方法来存储字符串和坐标数据。简单地扩展 JTextField 或 JTextArea 以向它们添加坐标信息是否是个好主意?我看到 swing 是基于事件的,所以我需要某种触发器来“保存”文本(正在考虑输入键,但我意识到我希望用户能够输入多行字符串)。

如有任何想法,我们将不胜感激。我熟悉 Java,但对 UI 部分只有一点经验。

最佳答案

您需要一个MouseListener 来代替ActionListener 来跟踪点击。

听起来您需要一个未修饰的 JInternalFrame,在 JDesktopPane 上有一个文本框。但是,我不认为您可以创建一个未修饰的 JInternalFrame,也许可以从一个带有 TextBox 的普通 JInternalFrame 开始,然后在桌面 Pane 上单击鼠标时创建新的框架。然后看看是否可以使 JInternalFrame 更像一个 Window

另一条路线是一个自定义组件,可以完成您需要的一切。这是可能的,只是需要更多自定义代码。

关于java - 单击在 Java 中添加动态文本区域类对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5938606/

相关文章:

java - 在java中将chartmouselistener()添加到jfreechart

java - 我想测试由库的非公共(public)异常触发的失败案例。我该如何抛出这个异常?

java - Spring 批处理中的压平加工结果

java - JLabel 图形在错误的时间发生变化

java - 防止 JTextField 中出现字母数字

user-interface - 如何让 UI 后面的代码井井有条?

python - WxPython:符合“确定”/“取消”按钮顺序的跨平台方式

java - 如何使用 BufferedWriter 和 FileOutPutStream 将数据附加到文件

java - Netty 套接字生成 Close_wait 状态

java - JMenuBar禁用后不启用