gpt4 book ai didi

java - Java中的记事本类

转载 作者:行者123 更新时间:2023-12-01 09:56:25 25 4
gpt4 key购买 nike

我想实现以下目标:一个可调整大小的 JFrame 类,顶部有一个按钮面板,JFrame 的其余部分有一个 JTextArea。它看起来应该很像带有按钮而不是下拉菜单的记事本。到目前为止,我能够编写此内容,但 JTextArea 的大小调整不正确。

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;

public class TestDialog extends JDialog implements ActionListener {

public TestDialog(JFrame parent, String title, String message) {
super(parent, title, true);
JPanel buttonPanel = new JPanel();
JButton buttonOK = new JButton("OK");
buttonPanel.add(buttonOK);
buttonOK.addActionListener(this);
//Listing 2 goes here
add(buttonPanel, BorderLayout.NORTH);
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
JTextArea myTextArea = new JTextArea();
myTextArea.setText(message);
myTextArea.setName(title);

myTextArea.setLineWrap(true);
myTextArea.setWrapStyleWord(true);

JScrollPane myScrollBar = new JScrollPane(myTextArea,
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
add(myScrollBar, BorderLayout.SOUTH);
setPreferredSize(new Dimension(1100, 800));
pack();
setLocationRelativeTo(null);
setVisible(true);
}

public void actionPerformed(ActionEvent e) {
setVisible(false);
dispose();
}
}

这是两个最接近的命中:( JTextArea on JPanel inside JScrollPane does not resize properly ) 和 ( http://www1.cs.columbia.edu/~swapneel/1007/Notepad.java ) 但是,在第一种情况下,JTextArea 调整大小仅适合所有文本,而不是所有可用的 JFrame 空间。记事本的第二个版本没有滚动条。因此,它不适用于大文件。

此外,我有很多“构造函数中可重写的方法调用”。我知道这很糟糕。我该怎么办?

最佳答案

这个应用程序的行为似乎如您所描述的那样。 https://docs.oracle.com/javase/tutorial/displayCode.html?code=https://docs.oracle.com/javase/tutorial/uiswing/examples/components/TextDemoProject/src/components/TextDemo.java

您应该就您看到的警告提出一个新问题,因为这是一个单独的主题,恕我直言。

关于java - Java中的记事本类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37174613/

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