스윙 구성 요소의 텍스트에 기본 글꼴이 있습니까? 특히 JTabbedPane
s의 탭 레이블은 무엇입니까?Swing JTabbedPane 레이블의 기본 글꼴을 얻으려면 어떻게해야합니까?
저는 Swing으로 만든 GUI의 모형을 만들고 Swing 응용 프로그램을 캡처 한 화면 이미지와 혼합하려고합니다.
스윙 구성 요소의 텍스트에 기본 글꼴이 있습니까? 특히 JTabbedPane
s의 탭 레이블은 무엇입니까?Swing JTabbedPane 레이블의 기본 글꼴을 얻으려면 어떻게해야합니까?
저는 Swing으로 만든 GUI의 모형을 만들고 Swing 응용 프로그램을 캡처 한 화면 이미지와 혼합하려고합니다.
룩앤필에 따라 다릅니다. 작성한 애플리케이션 인 경우 UIManager.getDefaults().getFont("TabbedPane.font")
'모양과 느낌'당신이 사용하고 있지만, 나를 위해 스윙의 기본 글꼴은
것 같은데요 산세입니다 - 약 12 또는 13
에 대부분의 구성 요소에 대한 일반글꼴 크기 기본값
그것은 Arial 인 것처럼 보입니다. 그것이 바로 Identifont이 말하는 것과 같습니다.
UIManager Defaults에는 모든 구성 요소의 모든 속성 ("TabbedPane.font"포함)에 대한 값이 표시됩니다.
이 코드는 Reverend Gonzo의 대답을 기반으로 UIDefaults에있는 키를 알려줍니다. 열쇠는 자명하다. 어떤 열쇠를 사용할 수 있는지 알고있다. 예를 들어, JTextField 글꼴의 키를 알아야만이 방법으로 만 찾을 수있었습니다. 당신이 글꼴을 찾고 있다면
Set<Object> keys = UIManager.getDefaults().keySet();
for (Object key : keys) {
if (key instanceof String && ((String) key).contains("font")) {
System.out.println(key + "=" + UIManager.getDefaults().get(key));
}
}
은, 귀하의 경우, 단지 문자열로 키를 캐스팅하고 단어 "글꼴"을 포함하고 있는지 확인합니다. 이렇게하면 잠재적 인 관심을 가질 수있는 키 집합을 좁힐 수 있습니다.
내가 목록
따라서 TabbedPane.font를 선택해야합니다.
Java8에서 시도했지만 항목의 일부만 줄였습니다. 'getDefaults()'의 결과를'Hashtable'에 할당하고, 반복자를 생성 한 다음 제안한대로 키를 검사하는 접근 방식을 변경했습니다. – Alfabravo
Java GUI 기본 글꼴은 "Helvetica", 굵은 글꼴 크기 9, 회색입니다.
그 절대적으로 틀린 점도 있습니다 : 이미 다른 사람들이 대답했기 때문에 글꼴은 LAF 및/또는 OS 설정에 달려 있습니다. – kleopatra
예, 한 쌍의 괄호 잊고 있지만, 일 감사 : UIManager.getDefaults을() 내의 getFont 생각으로 그것은 무엇을 (굵게 굴림으로 밝혀졌다 ("TabbedPane.font"). 그것은 가치가있다). –
다른 스윙 구성 요소에 적절한 키를 어떻게 결정합니까? –
'TabbedPane'을 원하는 요소 유형으로 변경하여 다른 구성 요소의 글꼴을 가져올 수 있습니다. 예를 들어, 'ToolTip.font'가 'Dialog'라는 것을 발견했습니다. – marklark