[Gvsig_desarrolladores] Como mostrar un botón del toolbar como pulsado
Francisco José Peñarrubia
fpenarru en gmail.com
Jue Oct 14 17:15:04 CEST 2010
Hola Francisco.
Has probado con setSelectedTool()? (Eso sí, tendrás que añadir el botón
como una tool, no como un button):
/**
* You can use this function to select the appropiate
* tool inside the toolbars
*/
public void setSelectedTool(String actionCommand)
{
setSelectedTool(defaultGroup, actionCommand);
}
/**
* You can use this function to select the appropiate
* tool inside the toolbars
*/
public void setSelectedTool(String groupName, String actionCommand)
{
ButtonGroup group = (ButtonGroup) buttonGroupMap.get(groupName);
if (group==null)
return;
Enumeration enumeration = group.getElements();
while (enumeration.hasMoreElements()) {
AbstractButton button = (AbstractButton)
enumeration.nextElement();
if (button.getActionCommand().equals(actionCommand)) {
button.setSelected(true);
}
}
selectedTool.put(groupName, actionCommand);
}
Estas funciones están en MDIFrame (puedes acceder con
PluginServices.getMainFrame())
A malas, también tienes un getComponentByName(), que te permitiría
obtener el componente swing que quieras, y trabajar directamente con él.
Espero que te sirva.
Saludos.
Fran.
El 14/10/2010 16:15, Francisco Puga escribió:
> Hola,
>
> Estoy intentando que el icono de una extensión creada por nosotros sea
> distinto en función del valor de una variable booleana de la
> extensión. La variable cambia de estado al pulsar sobre el botón.
>
> A pesar de que en el Javadoc esta puesto como una mala práctica estoy
> tratando de usar el registerDefault para cambiar el botón en tiempo de
> ejecución pero no lo consigo. ¿Alguna idea?
>
> También me valdría que el botón permaneciese como pulsado,
> independientemente de la herramienta (zoom, pan, ...) activa cuando mi
> variable valga True.
>
--
Fran Peñarrubia
Scolab
www.scolab.es
Asociación gvSIG
www.gvsig.com
Más información sobre la lista de distribución gvSIG_desarrolladores