2013-06-01 2 views
0
public void createWindow2(){ 
     setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     setPreferredSize(new Dimension(400, 500)); 
     setLocationRelativeTo(null); 
     setContentPane(new JLabel(new ImageIcon("src\\resources\\registerBg.png"))); 
     setResizable(false); 
     setVisible(false); 


     double size[][] = {{TableLayout.FILL,70,10,200,TableLayout.FILL}, //COLUNAS 
       {TableLayout.FILL,30,5,30,5,30,5,30,5,30,5,30,82.5,30,82.5}}; //LINHAS 
     setLayout(new TableLayout(size)); 

(...) 여기 는 TableLayout을 문제를 갖는

//Botoes JPanel 
      buts = new JPanel(); 
      double size2[][] = {{TableLayout.FILL,100,5,100,TableLayout.FILL}, //COLUNAS 
        {TableLayout.FILL}}; //LINHAS 
      buts.setLayout(new TableLayout(size2)); 
      add(buts,"0,4,13,13"); 
       //Continuar 
       continuar = new JButton("Continuar"); 
       buts.add(continuar,"1,0"); 
       //Voltar 
       voltar =new JButton("Voltar"); 
       buts.add(voltar,"3,0"); 

내가 시간 노력을 많이 찾아 봤는데

http://oi42.tinypic.com/m83cko.jpg

실행이 프레임의 이미지입니다 왜 버튼이 나타나지 않지만 이유를 찾지 못했습니다. 누군가이 문제를 도와 줄 수 있습니까?

+0

자바 스윙 (그것 프로그래밍 언어 '자바'의 시각적 코드라고도 함) 나 자바와 스윙이 무엇인지 알고 http://en.wikipedia.org/wiki/Swing_(Java) –

+1

하지만, 다시 JSwing 무엇입니까? 나는 그 용어가 사용 된 것을 보지 못했고 나는이 문맥에 실제로 존재하는지 의심합니다. 여기서 질문 할 때, 혼란을 피하기 위해 정확하도록 노력하십시오. –

+0

TableLayout을 어디에서 다운로드 받았습니까? 도서관의 출처는 무엇입니까? 표준 Swing 레이아웃의 일부가 아니며, 여러분과 우리가 여러분의 문제를 해결하는 데 도움이되는 라이브러리와 함께 제공되는 API를 가지고있을 것입니다. –

답변

-1

그냥 내 머리 꼭대기에서 생각하고 있지만이 코드는 효과가 있습니다. 버튼을 잘못 추가 한 것 같습니다. 적어도 내 관점에서. 아래 코드는 당신을 위해 작동합니다.

public class ButtonFrame extends JFrame 
{ 
    private JButton plainJButton; 
} 

public ButtonFrame() { 
    plainJButton = new JButton("Plain Button"); 
    add(plainJButton); 
} 
+0

프레임 레이아웃을 "TableLayout"[setLayout (새 TableLayout (크기));]로 설정했기 때문에 작동하지 않습니다.이 레이아웃은 프레임의 행과 선을 설정하는 배열과 함께 작동하므로, 개체를 추가 할 행과 줄을 지정해야합니다. 이 레이아웃에 대한 자세한 내용은 여기에서 확인할 수 있습니다. http://www.clearthought.info/sun/products/jfc/tsc/articles/tablelayout/index.html –

+0

그렇게해야합니까? LayoutManager (패키지 java.awt)는 허가 된 방법입니다. 그 안에는 ** [GridLayout] (http://docs.oracle.com/javase/6/docs/api/java/awt/GridLayout.html) **이 있습니다. 여기서는 찾고있는 것과 비슷한 것을 성취 할 수 있습니다 ** 에 대한. – kgdesouz

+0

@kgdesouz : GridLayout은 레이블 및 텍스트 필드의 표 레이아웃과 같은 용도로 사용하기에 끔찍합니다. GridBagLayout, GroupLayout 또는 MigLayout이 훨씬 더 좋습니다. –