Article View: es.comp.lenguajes.java
Article #587Re: Prioridad en la gestión de eventos
From: Ricardo Palomares Martinez
Date: Wed, 11 Apr 2007 09:36
Date: Wed, 11 Apr 2007 09:36
61 lines
3304 bytes
3304 bytes
clearlight@cantv.net escribió: > Hola Ricardo, No sé por qué, pero me imaginaba que ibas a tardar muy poco en enseñarme a mí sobre Java... Lo que no creía es que fuera a ser TAN poco tiempo. :-) > > En tu caso, lo minimo seria un indicador (boolean isDirty;) que dice > que el JTextField de la derecha ha sido modificado (en el > DocumentListener: que perversos pueden ser los lenguajes). En el > LostFocus, si isDirty, procesas el cambio. Pero en el TreeValueChanged > verificas el estado de isDirty y actualizas lo que tengas que > actualizar antes de procesar efectivamente el evento. En ese proceso > de los cambios, restableces isDirty a false. Pero esto ya lo > sabias :-) Tendré que hacerlo así, pero realmente creía que había un problema en el orden de proceso de los eventos (y ahora estoy seguro de ello). > En la documentacion de Swing hay una seccion que describe el "AWT > Focus Subsystem" donde queda claro que primero se procesa la > activacion del componente que recibe el foco y luego la perdida del > foco del componente que lo entrega. En realidad no, la documentación, imagino que te refieres a ésta: http://java.sun.com/javase/6/docs/api/java/awt/doc-files/FocusSpec.html#FocusEventAndWindowEvent es un pelín confusa y puede interpretarse como lo has hecho, pero lo que quiere decir esa lista es que, en un control dado que pueda recibir el foco, el que lo consiga supone que se ejecutará primero el evento de activación de la ventana (si procede), el de ventana que gana el foco (si procede), luego el del evento ganando el foco, y sólo después de haber recibido el foco podrá perderlo, y si además el foco va a otra ventana, perderá el foco la ventana y quedará desactivada. Justo debajo de esa lista, en "Event Delivery", hay dos ejemplos, el segundo de los cuales ilustra que primero pierde el foco el control que lo tenía hasta ese momento (y con él, la ventana) y sólo después lo ganan primero la nueva ventana y luego el nuevo control. Así que aplicaré las viejas cochinerías que me sugieres (muchas gracias) y preguntaré en la lista en inglés de NetBeans si esto debe ser considerado un bug de Java. Muchas gracias de nuevo. -- If it's true that we are here to help others, then what exactly are the OTHERS here for?
Technical Details
Message-ID:
<lpmue4-q1g.ln1@Father.family>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!news.germany.com!aioe.org!Father.family!newsReferences:
<f93te4-om8.ln1@Father.family> <1176262441.866711.126290@n59g2000hsh.googlegroups.com>Show Full Headers
Complete Article Headers
X-Google-Thread: 1116f3,312b58663d1ade94 X-Google-Attributes: gid1116f3,public X-Google-Language: SPANISH,ASCII Path: arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!news.germany.com!aioe.org!Father.family!news From: Ricardo Palomares Martinez <rpm.PUBLI@iespana.es> Newsgroups: es.comp.lenguajes.java Subject: Re: Prioridad en la gestión de eventos Date: Wed, 11 Apr 2007 11:36:20 +0200 Organization: Hogar, dulce hogar Lines: 61 Message-ID: <lpmue4-q1g.ln1@Father.family> References: <f93te4-om8.ln1@Father.family> <1176262441.866711.126290@n59g2000hsh.googlegroups.com> NNTP-Posting-Host: K4CD4uwNmm4UZTlYAHGTuQ.user.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Complaints-To: abuse@aioe.org User-Agent: Mozilla/5.0 (X11; U; Linux i686; es-ES; rv:1.8.1.2) Gecko/20070221 SeaMonkey/1.1.1 Mnenhy/0.7.4.0