2008년 7월 24일 목요일

JTabbedPane 에서 탭 스타일 수정하기





import java.awt.Color;
import java.awt.Graphics;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTabbedPane;
import javax.swing.UIManager;
import javax.swing.plaf.basic.BasicTabbedPaneUI;
class UI extends BasicTabbedPaneUI
{

@Override
protected void paintTabBorder(Graphics g, int tabPlacement, int tabIndex, int x, int y, int w, int h, boolean isSelected) {
// TODO Auto-generated method stub
//보통 보이는 부분 여기서 그려주고
g.setColor(Color.white);
g.drawRoundRect(x, y, w, h, 10, 10);
if (isSelected)
{
//여기는 선택시 보여주는 부분을 그려주면 됩니다.
g.setColor(Color.magenta);
g.drawLine(x+4 , y+4 , x+w-4 , y+4);

}

}
}

public class TestBasicTabbedPaneUI
{
public static void main(String[] args)
{
JFrame vFrame = new JFrame();
vFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
vFrame.setSize(200, 200);

JTabbedPane Tab = new JTabbedPane();
Tab.setUI(new UI());

Tab.add("One", new JPanel());
Tab.add("Two", new JPanel());
Tab.add("Three", new JPanel());

vFrame.getContentPane().add(Tab);
vFrame.setTitle("Tabs Example");
vFrame.show();
}
}



문]탭드페인의 탭 모양을 변형시키고싶은데요...
예를 들어 탭들의 높이를 약간 줄인다던지
선택되었을때 위쪽에 보이는 주황색 칼라를 바꾼다던지
탭들의 모서리부분의 둥그스런 부분을 직각으로 한다던지
이렇게 하려면 어떤 클래스를 써야하나요??

댓글 없음:

댓글 쓰기

-


Sidewinder


World


FishMusic


LaughingBaby