MS Paint中文本框的java代码

MS Paint中文本框的java代码,java,swing,graphics,jtextarea,Java,Swing,Graphics,Jtextarea,我正在尝试创建一个代码,该代码使用Jframe在java中模拟MS绘制。我想创建一个类似MS Paint的文本框字段,在其中拖动一个框,并根据您的偏好设置大小。我要做的是首先绘制一个矩形,然后通过鼠标事件侦听器获取尺寸,并将这些值传递给一个函数,该函数创建给定大小和宽度的JtextArea。但是,我需要扩展Jframe类,它在已经存在的框架之上创建一个新框架。我尝试将我的原始帧作为参数传递给JtextArea,它不起作用。有没有办法在不扩展frame类的情况下实现JtextArea?如果可能的话

我正在尝试创建一个代码,该代码使用Jframe在java中模拟MS绘制。我想创建一个类似MS Paint的文本框字段,在其中拖动一个框,并根据您的偏好设置大小。我要做的是首先绘制一个矩形,然后通过鼠标事件侦听器获取尺寸,并将这些值传递给一个函数,该函数创建给定大小和宽度的JtextArea。但是,我需要扩展Jframe类,它在已经存在的框架之上创建一个新框架。我尝试将我的原始帧作为参数传递给JtextArea,它不起作用。有没有办法在不扩展frame类的情况下实现JtextArea?如果可能的话,用任何相关的例子画一个文本框,它类似于MS Paint。请注意,我不想使用Graphics.drawstring方法。Thanx.

因为您不想直接使用
drawString()
,所以它可能是呈现文本的最佳选项。

创建一个临时
JTextArea
并将空布局添加到绘图面板中,放置在矩形上方


编辑完成(输入文本)后,删除临时文本区域,获取用户输入的文本并将其绘制在原始矩形中。

我想在运行时执行此操作,即在文本框中键入文本时。在您建议的解决方案中,我完全接受文本,然后将其渲染到屏幕上。想想微软的绘画文本框。同样的方法也是我想要的implement@StanislavL,你能提供一个例子吗?我想在键入时显示字符串。使用上述解决方案首先需要完整的字符串,对吗?因为它已经有了一个插入符号,Stan的方法更简单<代码>文本布局是更多的工作;请看一个例子。