Autor
|
Tema: [Solucionado] no perder el Foco?? (Leído 11,412 veces)
|
Nakatsukasa Itero
Desconectado
Mensajes: 22
Shark
|
pues como dice el título, ando y ando busque ejemplos y code sobre el como tener dos ventanas abiertas (independientes) y que la segunda que se abre, no permita que la minimize o que de click en otra ventana o que pierda el foco, pero no+ no.... y estoy casi seguro de que es como la forma de (o parecida) evitar que se cierre la ventana, es consumir el evento del lostfocus, pero no se como agarrarlo o hacer eso.... alguien me puede guiar, se que no deboe pedir codigo, pero al menos una pagina donde me oriente, gracias y disculpas. uso NetBeans (7.1.2) JDK 7.4 JavaFX 2.1
|
|
« Última modificación: 12 Mayo 2012, 01:04 am por Nakatsukasa Itero »
|
En línea
|
Kanashimi no Itero
|
|
|
RyogiShiki
Desconectado
Mensajes: 745
げんしけん - Hikkikomori FTW!!!
|
Imagino que hablas de Swing. No es posible conseguir ese comportamiento que mencionas, se puede conseguir un comportamiento similar, que es bastante molesto, pero no funcionará en el foco de las ventanas, veras como tu ventana pierde el foco en favor de otra ventana y tu ventana comenzará a pedir el foco, lo que terminará en un comportamiento intermitente bastante molesto, Como dices que las ventanas son independientes, imagino que no quieres una ventana "bloqueante". Este comportamiento lo he conseguido desde KDE en Gentoo Linux, no se como se comportará en Windoes o en otro DE con un gestor diferente. package dontlosefocus; import java.awt.event.FocusEvent; import java.awt.event.FocusListener; import javax.swing.JFrame; /** * * @author ryogi */ public DontLoseFocus() { mainFrame.setSize(200, 200); mainFrame.setResizable(false); mainFrame.setAlwaysOnTop(true); mainFrame.addFocusListener(this); mainFrame. setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE); } public void show() { mainFrame.setVisible(true); } public static void main (String[] args ) { DontLoseFocus dlf = new DontLoseFocus(); dlf.show(); } @Override } @Override mainFrame.requestFocus(); } }
Si tienes alguna duda con el código me avisas. Saludos
|
|
|
En línea
|
|
|
|
Nakatsukasa Itero
Desconectado
Mensajes: 22
Shark
|
ese si me funkó con swing, pero no en fx; y si el resultado que quiero es una ventana bloqueante, imagina que es como un joption o jdialog, ya vez que cuando aparecen, la parte de atras (su ancestor o parent) no puede ser accedida debido a que el dialog u option sigue arriba esperando que le presiones un boton o la cierres, eso es lo que busco..... gracias por tu respuesta de todas formas...
|
|
|
En línea
|
Kanashimi no Itero
|
|
|
RyogiShiki
Desconectado
Mensajes: 745
げんしけん - Hikkikomori FTW!!!
|
Hola. Bueno si se trata de JavaFX lo que tienes que hacer entonces es usar Modalities en el Stage. Puedes revisar los tipos de Modality que puedes aplicar en un Stage en el siguiente enlace: http://docs.oracle.com/javafx/2/api/javafx/stage/Stage.htmlEn todo caso te dejo un ejemplo ilustrando lo que he expuesto: package blockingwindow; import javafx.application.Application; import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.text.Text; import javafx.stage.Modality; import javafx.stage.Stage; /** * * @author Takumi */ public class BlockingWindow extends Application { /** * @param args the command line arguments */ public static void main (String[] args ) { launch(args); } @Override public void start(Stage primaryStage) { newBlockWin.setOnAction(new EventHandler<ActionEvent>() { @Override final Stage blockWin = new Stage(); blockWin.initModality(Modality.APPLICATION_MODAL); Scene blockScene = new Scene (new Group( new Text(10, 10, "Blocking Window")), 200, 200); blockWin.setScene(blockScene); blockWin.show(); } }); Scene scene = new Scene(root, 300, 300); root.getChildren().add(newBlockWin); primaryStage.setTitle("Blocking Window"); primaryStage.setScene(scene); primaryStage.sizeToScene(); primaryStage.show(); } }
Como puedes ver el Modality se ha aplicado al Stage creado desde el handle del botón. Espero sea de ayuda. Saludos
|
|
« Última modificación: 12 Mayo 2012, 00:41 am por RyogiShiki »
|
En línea
|
|
|
|
Nakatsukasa Itero
Desconectado
Mensajes: 22
Shark
|
arigatou but no me funcionaron las "Modas" (Modals) aunque está muy bienb el code..... pero gracias de todos modos... lo pondré como solucionado, esa parte ya la agarró el jefe despues de haber visto las pruebas y ver... que no funcionaron, y pues me libré anyway Gracias por tu pronta respuesta y pide a quien quieras que javafx realmente siga asi de facil y que se le implemente mas facilidad aun... have a nice day
|
|
|
En línea
|
Kanashimi no Itero
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
mantener el foco...
Programación Visual Basic
|
tony12
|
1
|
1,942
|
23 Febrero 2006, 16:04 pm
por tony12
|
|
|
Foco de una ventana
« 1 2 »
Programación Visual Basic
|
Yekka
|
10
|
4,301
|
29 Octubre 2007, 02:34 am
por Yekka
|
|
|
[SOLUCIONADO] Particionar disco C sin perder el SO
Windows
|
79137913
|
6
|
5,147
|
16 Febrero 2011, 19:44 pm
por 79137913
|
|
|
[Solucionado] Textbox y pérdida de foco.
Programación Visual Basic
|
Akkiles145
|
7
|
4,661
|
1 Mayo 2011, 14:16 pm
por Akkiles145
|
|
|
no perder foco en JFRAME
Programación General
|
XpandyX
|
0
|
2,885
|
22 Octubre 2011, 19:01 pm
por XpandyX
|
|