2014-04-22 2 views
-2

스윙을 사용하여 클릭 할 수있는 컬러 영역의 4x4 격자를 만드는 방법은 무엇입니까? 좋아, 그래서 나는 필요한 버튼을 가지고있다. 이것은 내가 가지고있는 업데이트 된 코드입니다. 지금은 텍스트 필드 나 jlabel을 왼쪽 아래에 표시하려고합니다. 그러나 나는 그것을 작동시킬 수 없다. 나는 다른 패널을 만들 수 있다고 생각했지만 외관상으로는 그렇지 못했다.아이콘 이미지를 오른쪽 위 및 왼쪽 아래 버튼으로 설정

import java.awt.*; 
import java.util.ArrayList; 
import javax.swing.*; 

public class Heist { 

ArrayList<JButton> buttons = new ArrayList<JButton>(); 

public Heist(){ 
    JFrame frame = new JFrame("Hesit!"); 
    frame.setLayout(new BorderLayout()); 

    JPanel top = new JPanel(); 
    top.setLayout(new BoxLayout(top,BoxLayout.LINE_AXIS)); 
    top.add(new JTextField("Moves: ")); 

    JPanel center = new JPanel(); 
    center.setLayout(new GridLayout(4,4)); 
    for(int i = 0; i < 16; i++){ 
     center.add(new JButton()); 
        buttons.add(new JButton()); 
    } 

    JPanel bottom = new JPanel(); 
    JPanel bottomR = new JPanel(); 
    bottom.setLayout(new GridLayout(1,2)); 
    bottomR.setLayout(new GridLayout(1,2)); 
    bottomR.add(new JButton ("EMP")); 
    bottomR.add(new JButton ("Reset")); 
    bottom.add(new JTextField("Enter/Exit")); 

    Container pane = frame.getContentPane(); 
    pane.add(top, BorderLayout.NORTH); 
    pane.add(center, BorderLayout.CENTER); 
    pane.add(bottom, BorderLayout.SOUTH); 
    pane.add(bottomR, BorderLayout.SOUTH); 

    frame.pack(); 
    frame.setSize(400,400); 
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    frame.setVisible(true); 
} 

public static void main(String[] args){ 
    Heist gui = new Heist(); 
} 

}

+1

간결 그들이 말하는 재치의 영혼 자세한 내용은 Laying Out Components Within a Container를 참조하여보십시오 CENTER 위치를하고 있지만, 우리는 일 – Coffee

+3

미안하지만, 무뚝뚝하기 위해 스트레칭하고 너는 게으른 질문이다. 앞으로 (또는 ** 지금 ** 심지어) 당신이 먼저 그것을 풀기위한 시도를 보여 준다면 더 나은 도움을 얻을 것입니다. 당신이 이것을하지 않으면, 우리는 당신이 갇혀 있거나 혼란스러워하는 것을 어떻게 알 수 있습니까? 또한 당신의 노력을 보여주는 것은 당신과 당신의 질문에 대한 존중의 측면에서 많은 이득을 얻습니다. 먼저 자신을 풀기 위해 노력과 솔선 수범을 기울일 의향이 있음을 보여줍니다. –

+1

알았어, 지금까지 나는 인공 지능 GUI를 만들었지 만 영역을 추가하는 방법을 모르겠습니다. 여러 개의 버튼을 추가하려고했지만 하나의 버튼 만 보여줍니다. 그렇다면 어떻게해야 제가이 문제를 먼저 해결할 수 있을까요? – user2835532

답변

2

좋아, 그럼 지금까지 내가 intital GUI를 만들었습니다,하지만 난 이 영역을 추가하는 방법을 모르겠어요. 여러 개의 버튼을 추가하는 시도했지만 그것은 단지 단 하나의 구성 요소가 지원하는 다섯 개 가지 가능한 위치 중 하나를 차지할 수있게 해주는 JFrame에 대한

기본 레이아웃 매니저가 BorderLayout 하나 개 버튼을 보여줍니다. 기본 위치는

GridLayout 대신

+0

좋아, 시작했을 때 알았어. 그러나 그것은 나를 위해 결코 운동하지 않았다. 버튼을 잘못 추가했을 수도 있습니다. 하지만 한 단추가 항상 나타났습니다. – user2835532

관련 문제