¿Cuál es la forma más sencilla de hacer que un JButton solo muestre el color de fondo? No necesito otros efectos como bordes, aspecto 3D o resaltado de desplazamiento.¿Cómo hacer JButton con estilo plano simple?
Gracias de antemano.
¿Cuál es la forma más sencilla de hacer que un JButton solo muestre el color de fondo? No necesito otros efectos como bordes, aspecto 3D o resaltado de desplazamiento.¿Cómo hacer JButton con estilo plano simple?
Gracias de antemano.
¿Qué tal
yourButton.setBorder(null);
?
Sólo hay que establecer los colores y la frontera:
private static JButton createSimpleButton(String text) {
JButton button = new JButton(text);
button.setForeground(Color.BLACK);
button.setBackground(Color.WHITE);
Border line = new LineBorder(Color.BLACK);
Border margin = new EmptyBorder(5, 15, 5, 15);
Border compound = new CompoundBorder(line, margin);
button.setBorder(compound);
return button;
}
Uso setOpaque(false);
para que el fondo transparente.
En su lugar, puede utilizar un JLabel con un MouseListener ... a menos que esté vinculado al uso de un JButton o ActionListener de alguna manera.
Eso funcionará, pero tiene implicaciones para el enfoque/accesibilidad del teclado. – McDowell
No sé si me he perdido un punto ... Pero Por lo general somtehing así:
button.setBorderPainted(false);
button.setFocusPainted(false);
button.setContentAreaFilled(false);
setContentAreaFilled (falso) era lo último que me faltaba para hacer que el botón fuera realmente plano sin un borde, ¡gracias! – rob
funciona bien, ¿cómo añado el subrayado en JButton? –
En primer lugar, establecer su aspecto y la sensación de algo fresco, como 'metal'.
try
{
for (UIManager.LookAndFeelInfo lnf :
UIManager.getInstalledLookAndFeels()) {
if ("Metal".equals(lnf.getName())) {
UIManager.setLookAndFeel(lnf.getClassName());
break;
}
}
} catch (Exception e) { /* Lazy handling this >.> */ }
luego hacer algo como esto:
my_jbutton.setBackground(new Color(240,240,241);
Si el color de su botón se iguala exactamente para hacer pivotar el color de control (240 240 240), las ventanas se aplicarán como ventanas estilo de botón para el botón, pues , el botón asume un estilo plano simple.
Gracias por responder. Todavía hay un resaltado pasando, cuando hago clic en el botón. El resto esta bien. ¿Alguna idea de cómo detenerla para resaltar? – c0d3x
Probablemente pueda controlar eso configurando una 'ButtonUI' personalizada. – McDowell