Попытка получить радио-кнопки, которые похожи на это в Java с Swing:
* * *
O A O
F U N
F T
O
... где *
- переключатель
Буквы могут быть либо справа, либо на боку, мне все равно. Мне просто нужны кнопки сверху и буквы под каждой кнопкой в узком столбце.
Пытался вращаться с графикой в методе paint()
, но он мешает, когда я нахожу на него курсор мыши, перерисовывая кнопки без вращения. Кажется, что мне нужно что-то вроде BoxLayout, но это также повернется на 90 градусов. Или, может быть, другой слой между JPanel и кнопками.
public class OffAutoOn extends JPanel {
public OffAutoOn ()
{
JRadioButton b1 = new JRadioButton ("OFF");
JRadioButton b2 = new JRadioButton ("AUTO");
JRadioButton b3 = new JRadioButton ("ON");
ButtonGroup bg = new ButtonGroup ();
bg.add (b1);
bg.add (b2);
bg.add (b3);
setLayout (new BoxLayout (this, BoxLayout.Y_AXIS));
add (b1);
add (b2);
add (b3);
}
@Override
public void paint (Graphics g)
{
Graphics2D g2d = (Graphics2D) g;
AffineTransform at = g2d.getTransform ();
try {
int w = getWidth ();
int h = getHeight ();
g2d.rotate (Math.PI / 2, w / 2, h / 2);
super.paint (g);
} finally {
g2d.setTransform (at);
}
}
}