私のフレームの一部にJTextAreaが含まれていると予想しますが、それは完全に占有しています。私はここでエラーを追跡することはできません。なぜこのコードのJTextAreaがJFrame全体を占有するのですか?
import java.awt.*;
import javax.swing.*;
public class EchoServer
{
public static void main(String args[])
{
CalcFrame c = new CalcFrame();
CalcTextArea a = new CalcTextArea();
}
}
class CalcTextArea
{
JTextArea historyDisplayer = new JTextArea("",50,20);
CalcTextArea()
{
//historyDisplayer.setVisible(true);
historyDisplayer.insert("Hello World", 0);
Color bg = new Color(23,34,56);
historyDisplayer.setBackground(bg);
historyDisplayer.setBackground(bg);
}
}
class CalcFrame extends CalcTextArea
{
JFrame frame = new JFrame();
CalcFrame()
{
frame.setSize(DEFAULT_WIDTH,DEFAULT_HEIGHT);
frame.setTitle("CALCULATOR");
frame.setVisible(true);
frame.add(historyDisplayer);
}
private static int DEFAULT_WIDTH = 299,DEFAULT_HEIGHT = 190;
}
'frame.setLayout(null); frame.add(historyDisplayer);'を試してください。実際はレイアウトマネージャを使用する必要があります。 –
@BalaRねえ..なぜヌルレイアウトをお勧めしますか?あなたはそれが喜びなく多くの痛みを引き起こすのは罪だと知っています;-)投稿のための – kleopatra
+1 http://sscce.org/ – mKorbel