Buscar
Social
Ofertas laborales ES

Foro sobre Java SE > Manejo de ventanas


Hola, por diversion el dia de hoy emprendi la tarea de hacer algo sensillo en java pero que me resulta util en mi trabajo, vale resaltar que no soy un verdadero experto en java pero me gusta, la cuestión es la siguiente.

Estoy haciendo una aplicacion en java SE para controlar turnos, pero esta tiene en el servidor varias JFrame que uso, una de ellas es la que se esta presentando (donde aparecen los turnos y en donde se ubican) lo he diseñado para que me detecte mediante GraphicsDevice cuantas pantallas tengo para que la presentacion siempre se vea en la segunda o la ultima pantalla que tenga mi computador y que se vea a Full Screen, pero resulta que al momento de iniciar la presentacion el JFrame que tengo como visor de estado y configuracion de la presentacion, se pone in activo, aldar click de nuevo en el de configuracion, la ventana de presentacion se minimiza. como puedo hacer para que al seleccionar una ventana cualquiera de mi software no se me minimice la presentación?

Este es el codigo que controla la presentacion, la hce o deshace full screen:



package Config.Contr;

/**
*
* @author FranciscoJavier
*/
import java.awt.*;
import javax.swing.JFrame;
import javax.swing.JOptionPane;

public class ScreenControl {

private GraphicsDevice[] gDevice;
private GraphicsEnvironment gEnviro;
public static final DisplayMode DISPLAY_MODE = new DisplayMode(Toolkit.getDefaultToolkit().getScreenSize().width,
Toolkit.getDefaultToolkit().getScreenSize().height, 32, DisplayMode.REFRESH_RATE_UNKNOWN);

/**
* Crea un nuevo objeto de tipo ScreenControl con los parametros por
* defecto.
*/
public ScreenControl() {
this.gEnviro = GraphicsEnvironment.getLocalGraphicsEnvironment();
this.gDevice = gEnviro.getScreenDevices();
}

/**
* Establece la ventana en modo Full Screen en la pantalla donde se
* proyectarán los turnos.
*
* @param dispMode Modo actual en el que se presenta la ventana.
* @param window Ventana que se desea poner en FullScreen.
*/
public void setFullScreen(DisplayMode dispMode, JFrame window) {
int ultimaPantalla = gDevice.length - 1;
gDevice[ultimaPantalla].setFullScreenWindow(window);
// prueba si el sistema soporta el cambio.
if (dispMode != null && gDevice[ultimaPantalla].isDisplayChangeSupported()) {
try {
gDevice[ultimaPantalla].setDisplayMode(dispMode);
} catch (IllegalArgumentException e) {
JOptionPane.showMessageDialog(window.getRootPane(), "Error de tipo: " + e.toString() + ". En el metodo setFullScreen", "Errores del sistema", JOptionPane.ERROR_MESSAGE);
}
}
}

/**
* Retorna la ventana que se encuentra a full screen.
*
* @return Ventana en modo full screen.
*/
public Window getFullScreenWindow() {
int ultimaPantalla = gDevice.length - 1;
return gDevice[ultimaPantalla].getFullScreenWindow();
}

/**
* Restaura la ventana a sus valores originales
*/
public void restoreWindow(JFrame window) {
if (window != null) {
window.dispose();
window.setVisible(true);
}
}
}

febrero 8, 2016 | Registered Commenterfjgp1989