난 당신이 그리드 사각형에서 텍스트 필드를 필요로하지만, 단지 모든 그리드 셀에 대한 모든 단일 문자를 적어 생각하지 않는다 ..
은 그냥 사용 부품과 세트를 통해 키보드 스트로크를 잡을 편집 할 수 있도록하려면 크로스 워드 셀은 사용자가 작성한 내용에 따라 다릅니다.
전체 그리드를 저장하는 뒤 2 차원 배열을 사용할 수 있기 때문에이 방법을 사용하면 매우 쉽습니다. 사용자가 정의를 선택하면 첫 번째 셀부터 시작하여 키를 입력 할 때마다 단일 문자를 채우기 시작합니다. 정의의 .. 그리기 루틴은 그리드와 중심 문자를 셀 안쪽에 그릴 수 있어야합니다.
JTable
JTable
도 작동 할 수 있지만 문제가 너무 커질 것으로 생각합니다. 당신이 전혀 필요하지 않은 많은 것들과 인터페이스 할 수 있습니다 ..
EDIT (덧글) :
나는 이런 식으로 비슷한 일을했다 : 당신이 세포의 배열 셀 클래스
class Cell
{
boolean isBlank;
char value;
}
을 가질 수 있습니다 당신은 당신의 그리드를 구하십시오
Cell[][] gamefield = new Cell[15][15];
다음 paint()
내부에 쉽게 반복 할 수 있습니다 :
for (int i = 0; i < Scheme.rows; ++i)
{
for (int j = 0; j < Scheme.cols; ++j)
{
g2.drawRect(i*32, j*32, 32, 32);
if (Scheme.scheme[i][j].isBlank)
g2.fillRect(i*32 + 3, j*32 + 3, 32 - 5, 32 - 5);
}
}
그냥 여전히 스크린 샷 결과가 있기 때문에 something like alt text http://img3.imageshack.us/img3/7374/68514939.png
@Jack 답장을 보내 주셔서 감사합니다. 그러면 그리드를 그릴 때 무엇을 사용합니까? Graphics2D에서 사각형 모음? – Alex
전 가능한 모든 유형의 격자 사각형을 만들고 그리드에로드하기 위해 일부 이미지 편집 소프트웨어를 사용할 수 있다고 생각했습니다. – Alex
당신은 모든 문자를 의미합니까? __graphics.drawString() __을 사용할 수 있습니다. __graphics.getFontMetrics()를 사용하여 문자 너비를 가져 와서 쉽게 배치 할 수 있습니다. stringWidth ('A') __ – Jack