【发布时间】:2013-11-22 01:43:02
【问题描述】:
我正在尝试使用 Swing 使用 Java 编写一个程序,该程序将显示一个窗口:
+--------------+-----------------------------------+
| | |
| | |
| | |
| | |
| | |
| | |
| | |
+--------------+-----------------------------------+
左侧窗口包含文本文件,右侧窗口加载文本文件。问题有两个方面。一方面,Swing 让我精神振奋,因为我似乎无法理解拆分框架的工作原理。
问题的后半部分是,当我在右侧获取文本时,它只是随机放置并且周围有空白区域。我希望它像 Windows 资源管理器窗口一样显示,但文本格式更像是文本查看器,如果这有意义的话。
这是我尝试过的。
package myCB;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextArea;
public class MyCB extends JFrame implements ActionListener {
/**
*
*/
private static final long serialVersionUID = 1L;
public static void main(String[] args) {
new MyCB();
}
public MyCB() {
super("MyCB.0.0.0.1");
setResizable(true);
setSize(750, 400);
setLocationRelativeTo(null);
setDefaultCloseOperation(EXIT_ON_CLOSE);
// Dimension size1 = new Dimension(200, 400);
// Dimension size2 = new Dimension(500, 400);
JPanel p = new JPanel();
JPanel b1 = new JPanel();
b1.setPreferredSize(new Dimension(200, 400));
JPanel b2 = new JPanel();
b2.setPreferredSize(new Dimension(100, 100));
b1.setVisible(true);
b2.setVisible(true);
JTextArea text = new JTextArea("This is a sample of a text area" + "in Java Swing for my program.");
text.setLineWrap(true);
text.setWrapStyleWord(true);
b2.add(text);
p.setLayout(new BorderLayout());
setVisible(true);
p.add(b1, BorderLayout.LINE_START);
p.add(b2, BorderLayout.CENTER);
p.setVisible(true);
repaint();
add(p);
revalidate();
}
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
}
}
任何帮助将不胜感激。我已经在 Swing 上苦苦挣扎了好几个星期。谢谢!
【问题讨论】:
标签: java windows swing text-files