4

JTabbedPane のインセットの色をどのように取得するのか疑問に思っていました。この色はなかなか取れません。私が試みるたびに、外側のフレームの色である 236,236,236 が得られ、内側のフレームの色は約 10 暗い 227,227,227 になります (組み込みのアップル カラー メーターを使用)。

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); を使用してルック アンド フィールを設定しています。

これは、インターネットで見つけた画像で確認できます。http://pagesofinterest.net/wordpress/wp-content/uploads/2009/06/Quaqua-Maven-Netbeans.jpg「パネルのタイトル」という言葉は、私にとって役に立たない明るい色を取得している領域です. 丸い角の内側は、私が取得しようとしているより暗い色です. コンテンツペインの色を無駄にしようとしました。

ご助力いただきありがとうございます!

**編集:**コードを追加しました! ご覧のとおり、フレームの色や「1」「2」と表示されているタブの色ではなく、丸みを帯びた角の内側の領域の色を取得しようとしています(Macの場合)。写真を添付し​​て、「ここ」と書かれた部分の背景色を取得しようとしています。ありがとうございます。

スクリーンショット

import java.awt.Container;
import javax.swing.JFrame;
import javax.swing.JTabbedPane;
import javax.swing.UIManager;

public class main {
JFrame frame;
Container c1 = new Container();
Container c2 = new Container();
JTabbedPane top = new JTabbedPane();
static main GUI;
public void createGUI(){
    frame = new JFrame();
    Container c = frame.getContentPane();
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    top = new JTabbedPane(JTabbedPane.TOP);
    top.setFocusTraversalKeysEnabled(false);
    top.setFocusable(false);
    top.addTab("1", c1);
    top.addTab("2", c2);
    frame.setSize(315,450);
    frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    frame.setResizable(true);
    c.add(top);
    frame.pack();
    frame.setVisible(true);
} 
public static void main(String[] args) {
    try {
        UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
    }
    catch(Exception e) {}
    GUI = new main();
    GUI.createGUI();
}
}

編集: camickr、これは UIManager のデフォルトのスクリーンショットです。残念ながら、インセットの色と同じ色はありません。

UI マネージャーのデフォルト

4

2 に答える 2

2

UIMangaer Defaultsを使用して色を見つけることができる場合があります。

于 2013-05-18T15:25:30.667 に答える