저는 여기서 사지에 나가서 스윙 (또는 그 문제에 대해서는 SWT)과 포지셔닝을한다고 가정합니다.
요소를 지능적으로 배치하려면 레이아웃 관리자가 있어야 컨테이너 (창, 패널 등)가 필요합니다. 레이아웃 관리자는 컨테이너 내에서 자식 컨트롤의 위치를 담당합니다.
예를 들어 Java 자습서 here은 Java와 함께 제공되는 많은 표준 레이아웃 관리자를 사용하는 방법을 보여줍니다. Java와 함께 제공되지 않는 것도 있습니다. 특히 플랫폼 고유의 모양과 느낌을 가진 SWT가 특히 중요합니다.
업데이트 : 그냥 그래픽이 paintComponent
에서 처리 할 수있는 텍스트를 작성하는 방법을 찾고 이후, 나는 완전히 오프 기본이었다 당신이 머무르는 물건으로 볼
.
당신은 이미 Graphics2D.drawString(String,x,y)
을 사용했습니다. x
과 y
은 그릴 위치를 지정합니다.
당신이해야 할 일은 x
과 y
을 오른쪽 상단 모서리에 그려야합니다. 실제로 변경해야하는 것은 x
뿐입니다.
여기가 까다로워집니다. 작업 공간의 크기에 따라 y
을 계산해야합니다. 텍스트 문자열의 크기는 이고입니다.
나는 그래픽 출력을 해본 적이 없다 이후 자바에 대한 세부 사항을 모르지만 그것은 가능성이 :
사용 가능한 페인트 사각형을 반환
graphic
에 호출 할 수있는 방법이있다
- ; 이 값은 최대
y
값이됩니다.
- 문자열을 다른 방법으로 전달해야 글꼴 정보에 필요한 너비가 필요합니다.
두 가지 코드를 모두 가져 왔으면 첫 번째 코드에서 두 번째 코드를 빼고 코드를 오른쪽 상단에서 완료하려면 y
값으로 시작해야합니다.
코드 게시가 시작됩니다. 이 "파일"이 메뉴로되어 있습니까? – OscarRyz
왼쪽 상단 구석 ... 뭐라고 요? 잠깐, 잠깐 ... 내가 추측 할 수 있니? 그게 조랑말이야? 오, 그거 조랑말이야, 그렇지? 조랑말! 그것은 A PONY의 왼쪽 상단입니다 !! 포니! – zombat
좀 더 구체적으로하는 것이 좋을 것입니다 – akf