2009-05-20 3 views
0

이 질문은 How to build a Google-chrome tabs and menubar interface in Java Swing?과 비슷하지만, 요점은 다음과 같습니다. JTabbedPane의 탭 앞뒤에 구성 요소를 배치하려면 어떻게해야합니까?JTabbedPane : 탭 자체 앞뒤의 구성 요소

나는 버튼 아이디어 자체를 이미 내놓았지만 실제로는 JTabbedPane을 가지고 싶지만 측면에는 버튼이나 아이콘으로 장식되어 있습니다.

Kirill의 laf-widget 프로젝트가 여러 LaF의 경우 (탭 왼쪽에있는 돋보기 아이콘) 비슷한 것을 수행하는 것을 보았습니다. 그러나 나는 그가 어떻게하는지 이해하기에는 아직 정통하지 않다는 것을 인정해야한다 - 그리고 또한 다소 복잡한 과정 인 것처럼 보인다. 문제가되는 LaF를 물리적으로 변경 (바이트 코드가 조작)하고, laf을 주입한다. - 위젯을 UI 위임자에 포함시켜야합니다. JTabbedPane 또는 TabbedPaneUI가 실제로 아이콘/버튼을 삽입하도록 변조되는 방식을 여전히 알지 못합니다.

답변

1

나는 마침내 Substance LaF/그는 JTabbedPanes을 꾸미는 LAF-위젯의 탭의 전면에 버튼을 넣어 관리하는 방법의 LAF-위젯의 키릴를 요청하고,이 그의 회신 :

그것은 의존 BasicTabbedPaneUI.tabAreaInsets 필드 버튼을위한 공간을 만들고 버튼의 사용자 정의 setBounds는 구성 요소가 영역에 위치하도록 구성합니다.

는 더 많은 코드의 경우, LAF-위젯 프로젝트에 TabOverviewButton 및 TabOverviewDialogWidget 클래스를 참조하십시오. 일반적으로

은 탭 창 UI 대표는 개인을 많이 가지고 있기 때문에 강화하고 보호 방법

감사합니다, 키릴을 패키지로 가장 매력적인 것들 중 하나입니다!

1

JIDE에는이 기능을 간단한 setBeforeComponent() 및 setAfterComponent() 메소드로 제공하는 구성 요소 집합의 일부로 탭 분할 창이 있습니다.

여기에서 그것의 데모가 : 그것은이 http://www.jidesoft.com/products/1.4/jide_demo.jnlp

+0

은?! Awesome - Stackoverflow에 대한 다른 답변에서 Jide의 방향을 지적했지만 아직 API를 확인하지는 못했습니다. 스크린 샷은 그러한 기능을 전혀 알지 못합니다. 나는 Jide를 사용하여 LaF를 잃어버린 것 같은데? – stolsvik

+0

그것은 당신이하는 일에 달려 있습니다. JIDE 구성 요소는 LaF를 존중하는 데 매우 효과적입니다. 우리는 synthetica와 함께 사용하며 매끄럽습니다. – banjollity

+0

어떻게 달라질까요? 일부 문서가있는 곳을 가리키는 포인터가 있습니까? 나는 그것을 찾을 수없는 것 같습니다. 나는 물질과 함께 그것을 사용하려고 노력한다. 그리고 그것은 blatanly 히 그것을 존중하지 않는다. 그것은 "vsnet"UI를 사용하여 그림을 그리는 것 같습니다. – stolsvik