2011-07-03 3 views
0

테이블이 창에 표시되지 않습니다. 개요는 있지만 그리드는 없습니다! 도와주세요! 사전에Jtable이 보이지 않습니까?

tetris.java

package com.diesal11; 

import com.diesal11.Board; 

import java.awt.BorderLayout; 

import javax.swing.JFrame; 
import javax.swing.JScrollPane; 

public class Tetris extends JFrame{ 

    private static final long serialVersionUID = 1L; 

    public Tetris() { 
     this.setSize(200, 400); 
//  this.setResizable(false); 
     this.setTitle("Tetris"); 
     this.setDefaultCloseOperation(EXIT_ON_CLOSE); 

     Board board = new Board(this); 
     JScrollPane ScrollPane = new JScrollPane(board); 
     this.add(ScrollPane, BorderLayout.CENTER); 
    } 


    public static void main(String[] args) { 
     Tetris game = new Tetris(); 
     game.setLocationRelativeTo(null); 
     game.setVisible(true); 
    } 
} 

Board.java

package com.diesal11; 

import javax.swing.JPanel; 
import javax.swing.JTable; 

public class Board extends JPanel{ 

    private static final long serialVersionUID = 1L; 

    Tetris parent; 
    int BoardWidth = 10; 
    int BoardHeight = 20; 
    JTable Table; 

    public Board(Tetris parent){ 
//  setFocusable(true); 
     this.parent = parent; 
     this.Table = new JTable(this.BoardWidth, this.BoardHeight); 
     this.Table.setValueAt("aaa", 0, 0); 
     this.Table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); 
     this.Table.getColumnModel().getColumn(1).setHeaderValue("Test"); 
    } 
} 

감사합니다! Im는 Java에 너무 익숙합니다. 정말 간단하다면 사과하십시오!

+0

아마도 .setVisible (true)이 누락 되었습니까? 잠시 동안 JTable을 사용 해본 적이 없으므로, 나는 확실히 모르겠다. – Vache

+0

"Main"메서드의 첫 번째 파일에있는 내용은 JTable에서 다시 사용해야합니까? – Diesal11

답변

3

당신은 JPanel의에 테이블을 추가해야합니다

.... 
    this.Table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); 
    this.Table.getColumnModel().getColumn(1).setHeaderValue("Test"); 
    this.add(Table); 

는 또한, 규칙은 소문자로 변수 이름을 시작하는 것입니다.

+0

THANKYOU! 나는 멍청한 놈처럼 느껴진다. 그것은 매우 간단했다! 변수 이름 지정에 대해 지적 해 주셔서 감사합니다! – Diesal11

+1

문제 없습니다. 내가 아는 전부는 내 자신의 (슬픈) 경험에서 온 것입니다 ... – MByD

+1

당신은 혼자가 아닙니다 +1 – mKorbel

관련 문제