2014-02-06 5 views
1

스크롤 막대가 나타나지 않는 것 같습니다. 스크롤 응용 프로그램 코드를 추가했을 때 응용 프로그램 하단에 작은 상자가 있음을 알 수 있습니다.하지만 너무 작아서 아무 것도 할 수 없으며 텍스트 영역을 스크롤 가능하게 만들지 않습니다. 어떤 도움을 주시면 감사하겠습니다.JScrollpane 스크롤 막대가 나타나지 않습니다.

mainFrame = new JFrame();  
    menuBar = new JMenuBar(); 
    menu = new JMenu("File"); 
    messageArea = new JTextArea(20, 35); 
    messageEntry = new JTextArea(5, 35); 
    fl = new FlowLayout(); 
    currentMessage = ""; 

    sp = new JScrollPane(messageArea); 
    sp.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS); 
    sp.setSize(100, 100); 

    messageArea.setEditable(false); 
    messageArea.setLineWrap(true); 


    menuBar.add(menu); 

    sendButton = new JButton("Send"); 
    sendButton.addActionListener(this); 
    mainFrame.setPreferredSize(new Dimension(400,500)); 
    mainFrame.setLayout(fl); 
    mainFrame.getContentPane().setBackground(Color.blue); 
    mainFrame.setJMenuBar(menuBar); 
    mainFrame.add(messageArea); 
    mainFrame.add(messageEntry); 
    mainFrame.add(sp); 
    mainFrame.add(sendButton); 
    mainFrame.setResizable(false); 
    mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    mainFrame.setTitle("Communicator"); 
    mainFrame.pack(); 
    mainFrame.setVisible(true); 

답변

3

당신은 빈 스크롤 창을두고, 나중에 스크롤 창 밖으로 버릴입니다 코드에 messageArea 직접 mainFrame에 추가됩니다. mainFrame.add(messageArea); 행을 삭제합니다. 스크롤 창 자체를 창에 추가하기 만하면됩니다.

+0

와우 나는 한 시간 동안 그걸로 싸워왔다. 감사! – user519670

관련 문제