2013-10-02 2 views
2

스크롤 막대 색상을 변경하려면 무엇을 조사해야하는지 궁금합니다.
스크롤바의 배경과 색상을 기본 창 색상을 제외하고 다른 것으로 바꾸기를 원합니다.JScrollPane 스크롤 막대 색상 변경

어디서나 답을 찾을 수있는 곳을 수색했지만 불행히도 아무 것도 찾을 수 없었습니다. 어떤 도움이라도 대단히 감사 할 것입니다. 저는이 문제로 정말로 고심하고 있습니다.

답변

3

체크 아웃 UIManager Defaults 일부 기본값을 변경할 수 있습니다. 이것은 응용 프로그램의 모든 스크롤 막대에 영향을 미칩니다. 또한 UIManager 값은 LAF에 따라 다릅니다.

+0

나는이 편리한 앱을 잊어 버렸고, 나는 과거에 그것을 사용 해왔다. 사용하는 LAF에 따라, 특정 속성은 무시하고 방해하지 않겠습니까? – Josh

+0

예, 이것이 작동한다는 보장은 없습니다. 유일한 해결책은 지원하려는 모든 LAF에 대해 사용자 지정 UI를 만드는 것입니다. – camickr

1

내가 찾는 기본 답변은 ScrollBarUI 클래스에 있지만 경고되어야한다고 생각합니다. 그런 식으로 광기가있다. UIResources를 만지작 거리는 것은 재미 있지 않습니다. 원하는대로 더 많이 보이는 완전히 새로운 LnF 라이브러리를 찾고 싶을 수도 있습니다.

+0

내가 LNF에서 아무것도 변경할 수 없습니다입니다 :(에만 스크롤바 색상을 변경해야합니다 당신의 대답은 정확히입니다 I 두려워하지만, 내가 그것을 할 수 있는지, 곧 받아들이려고 노력할 것입니다. – Quillion

2

당신은 특별히 내부에 다음과 같은 기능으로, ScrollBarUI 클래스로 봐야합니다.

불행히도
protected void paintTrack(Graphics g, JComponent c, Rectangle trackBounds) { 
      /// code 
    } 
    protected void paintThumb(final Graphics g, JComponent c, Rectangle thumbBounds) { 
     //code 
    } 
관련 문제