次のようなものがあります。
ご覧のとおり、「Blambo」は不透明な赤い背景の JLabel です。ラベルは、1 ピクセルの黒っぽい境界線で囲まれた小さな灰色のバーの上にあります。赤色の警告を、それが置かれているバーにもっとうまく合わせたいと思います。つまり、2 ピクセル短くして 1 ピクセル下に移動するか、同じ単一ピクセルの境界線を上下のみに適用する必要があります。このコードは他のラベルと共有されているため、これら 2 つのうち、最初のものが望ましいと思われます。
問題のコード:
bgColor = Color.red;
textColor = Color.white;
setBackground(bgColor);
setOpaque(true);
// This line merely adds some padding on the left
setBorder(Global.border_left_margin);
setForeground(textColor);
setFont(font);
super.paint(g);
その境界は次のように定義されます。
public static Border border_left_margin = new EmptyBorder(0,6,0,0);