gpt4 book ai didi

java - 如何在JPanel中添加一个可编辑的文本框

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:02:49 25 4
gpt4 key购买 nike

我想在我的 JPanel 上添加一个文本框。此文本框类似于 Microsoft PowerPoint 中的文本框:可以调整大小、四处移动等的文本框。我查看了 JTextField,但我认为这不是我需要的。我不需要需要这样的弹出框:

enter image description here

我有一个允许用户添加、调整大小和移动形状的程序。我现在希望能够将文本框放入这些形状中。这是我正在寻找的示例:

enter image description here

无论如何我可以做到这一点吗?谢谢。

最佳答案

ComponentResizer类负责调整大小。下面是一个可调整大小的 JTextArea 的工作示例:

public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
buildGUI();
}
});
}

private static void buildGUI() {
JFrame f = new JFrame("Test");
f.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

ComponentResizer cr = new ComponentResizer();
JPanel mainPanel = new JPanel(null);
f.add(mainPanel);

JTextArea textArea = new JTextArea("Some text\nSome other text");
cr.registerComponent(textArea);

mainPanel.add(textArea);
textArea.setBounds(50, 50, 150, 150);

f.setSize(400, 400);
f.setLocationRelativeTo(null);
f.setVisible(true);
}

如果您还想移动 JTextArea,您可以另外使用 ComponentMover并添加以下代码:

    ComponentMover cm = new ComponentMover();
cm.registerComponent(textArea);
cm.setDragInsets( cr.getDragInsets() );

关于java - 如何在JPanel中添加一个可编辑的文本框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26590456/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com