2 回答

TA貢獻1811條經驗 獲得超4個贊
public static void main(String[] args) { JFrame jf = new JFrame(); JPanel jp = (JPanel) jf.getContentPane(); jp.setLayout( null ); JPanel group = new JPanel(); group.setBorder(BorderFactory.createTitledBorder( "日常用品" )); group.setBounds( 50 , 50 , 400 , 400 ); jp.add(group); group.setLayout( null ); JTabbedPane jtp = new JTabbedPane(); group.add(jtp); jtp.setBounds( 50 , 50 , 300 , 300 ); jtp.setTabPlacement(JTabbedPane.TOP); jtp.setTabLayoutPolicy(JTabbedPane.WRAP_TAB_LAYOUT); jtp.addTab( "adfasdddddddddddddddddddddd" , new JPanel()); jtp.addTab( "sssddddddddddddddddddddddds" , new JPanel()); jf.setBounds( 200 , 200 , 500 , 500 ); jf.setVisible( true ); } |
那其實并不是真正豎著,而是使用了JTabbedPane.WRAP_TAB_LAYOUT布局,也就是選項卡自動換行,然后給選項卡足夠的寬度,寬到橫向只能容納一個選項卡的程度,就會出現這種豎著的效果
group.setBorder(BorderFactory.createTitledBorder("日常用品"));是為面板創建一個帶標題的邊框,BorderFactory有以下創建邊框的方法,選一個適合你的用——
==================================
static TitledBorder createTitledBorder(Border border)
創建一個空標題的新標題邊框,使其具有指定的邊框對象、默認的文本位置(位于頂線上)、默認的調整 (leading),以及默認的字體和文本顏色(由當前外觀確定)。
static TitledBorder createTitledBorder(Border border, String title)
向現有邊框添加一個標題,使其具有默認的位置(位于頂線上)、默認的調整 (leading),以及默認的字體和文本顏色(由當前外觀確定)。
static TitledBorder createTitledBorder(Border border, String title, int titleJustification, int titlePosition)
向現有邊框添加一個標題,使其具有指定的位置和默認字體和文本顏色(由當前外觀確定)。
static TitledBorder createTitledBorder(Border border, String title, int titleJustification, int titlePosition, Font titleFont)
向現有邊框添加一個標題,使其具有指定的位置和默認的文本顏色(由當前外觀確定)。
static TitledBorder createTitledBorder(Border border, String title, int titleJustification, int titlePosition, Font titleFont, Color titleColor)
向現有邊框添加一個標題,使其具有指定的位置、字體和顏色。
添加回答
舉報