2015-01-21 3 views
0

Я работал над этим немного, и жизнь меня не может никуда. Я пытаюсь установить кнопки и ярлыки, чтобы устанавливать друг на друга, а не бок о бок. Я полагаю, что мне нужно изменить форму компоновки FlowLayout на BoxLayout, но я не могу понять, как это сделать. Это то, что у меня есть до сих пор.Как изменить FlowLayout на BoxLayout в JFrame

import javax.swing.JFrame; 

public class VoteCounter 
{ 
    //---------------------------------------------- 
    // Creates the main program frame. 
    //---------------------------------------------- 
    public static void main(String[] args) 
{ 
    JFrame frame = new JFrame("Vote Counter"); 

    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    frame.getContentPane().add(new VoteCounterPanel()); 
    frame.pack(); 
    frame.setVisible(true); 
} 
} 

Любая помощь была бы принята с благодарностью.

+3

Чтобы лучше помочь, опубликуйте [MCVE] (http://stackoverflow.com/help/mcve) (минимальный полный проверяемый пример) или [SSCCE] (http://www.sscce.org/) (Short , Self Contained, Правильный пример). –

ответ

1

по умолчанию Макет JPanel является FlowLayout. Вы можете изменить макет на панели как:

JPanel panel = new JPanel(); 
panel.setLayout(new BoxLayout(null,BoxLayout.Y_AXIS)); 

Вот пример использования BoxLayout:

choosing the best Layout for this jframe

Кроме того, вы можете использовать BoxLayout установить пустое пространство:

https://stackoverflow.com/a/22525005/3378204

Надеюсь, что это вам поможет.