PDA

Ver la Versión Completa : Evitar que el formulario venga al frente


newtron
11-10-2011, 09:52:55
Hola a tod@s.

¿Hay alguna manera de que cuando piques con el ratón en un formulario no se venga delante de los demás?.

Hay una instrucción que es Form.SendToBack pero esta lo que hace es llevarlo al fondo de cualquier formulario de cualquier programa abierto con lo cual tampoco me sirve porque si hay algún otro programa abierto se posiciona detrás de él.

Gracias y un saludo

Casimiro Notevi
11-10-2011, 11:39:49
je, je, je... ayer te pregunté:
¿Qué comportamiento quieres cuando se pinche en la ventana del menú?, ¿que no se ponga delante?
Pero entre tantos mensajes de ida y vuelta se te pasó contestar esa.
Seguro que hay alguna forma, aunque no la conozco.
Aunque se me ocurre que cuando activas esa ventana (en el onActivate) puedes recorrer todas las ventanas abiertas y ponerlas delante, pero entonces la pregunta es:
Si está detrás, le pinchas y las demás se ponen delante ¿para qué sirve?, o sea, que no entiendo la lógica de lo que quieres hacer.

newtron
11-10-2011, 12:01:15
je, je, je... ayer te pregunté:


"Pos claro", por eso pongo este post. :D


Si está detrás, le pinchas y las demás se ponen delante ¿para qué sirve?, o sea, que no entiendo la lógica de lo que quieres hacer.

La idea de eso, como te comentaba ayer, es que si tengo un formulario abierto (normalmente más pequeños que el menú principal) y pico en el menú que queda por detrás el menú se viene al frente y tapa el formulario más pequeño con lo cuál a la gente se le olvida que está abierto y puede haber problemas, o sea, que el gordo engulle al chico como casi siempre. :D

Casimiro Notevi
11-10-2011, 12:18:20
Pues entonces puedes hacer lo que he comentado, recorrer todas las ventanas e ir poniéndolas delante, ¿eso te vale?.

newtron
11-10-2011, 12:27:37
Pues entonces puedes hacer lo que he comentado, recorrer todas las ventanas e ir poniéndolas delante, ¿eso te vale?.

Puede valer, haré alguna prueba a ver si hace algún efecto visual extraño o algo raro.

Gracias.

Caro
11-10-2011, 15:33:00
.......................es que si tengo un formulario abierto (normalmente más pequeños que el menú principal) y pico en el menú que queda por detrás el menú se viene al frente y tapa el formulario más pequeño con lo cuál a la gente se le olvida que está abierto y puede haber problemas, o sea, que el gordo engulle al chico como casi siempre. :D

Hola Newtron, prueba colocando la propiedad FormStyle del formulario principal en fsNormal y de los demas en fsStayOnTop.

Saluditos

newtron
11-10-2011, 16:52:24
Hola Newtron, prueba colocando la propiedad FormStyle del formulario principal en fsNormal y de los demas en fsStayOnTop.

Saluditos

Gracias Caro, ya he probado esa opción. El problema es que el proyecto es bastante grande, tiene muchas ventanas de aviso, otras decenas de messagebox, etc. y alguna de ellas se me quedan detrás del formulario.

Gracias y un saludo

newtron
11-10-2011, 19:13:27
.... y digo yo....

estoy tocando en el activate del menú principal para recorrerme los formularios y traerlos al frente pero no encuentro la propiedad que me diga si el formulario está visible o solamente creado, miro la propiedad visible y me da false aunque esté abierto.

¿Alguien sabe como preguntarle al formulario para que me diga si está visible o solamente creado pero no visible?

Gracias y un saludo

Edito: yaaaaaaaaaaaaaaa, yaaaaaaa... con la propiedad showing :)

Casimiro Notevi
11-10-2011, 19:55:37
yaaaaaaaaaaaaaaa, yaaaaaaa... :)

Algunos se emocionan programando ;)

Al González
11-10-2011, 20:15:08
Como que ustedes dos se tienen ganas. :D

newtron
12-10-2011, 09:48:20
Como que ustedes dos se tienen ganas. :D

Qué va amigo Al, me huye. :p

newtron
12-10-2011, 10:15:57
Catchis...

Ya he conseguido que se quede el menú siempre detrás de los formularios pero claro, si se queda detrás es porque no tiene el foco, y si no tiene el foco no puedo seleccionar ninguna otra opción del menú. Casimiro, ¡¡y no caes en esto antes hombre!! :p.

Al final me quedaré con la opción mdi pero para resoluciones iguales o superiores a 1024x768 porque con 800x600 no me caben los formularios dentro del espacio que me deja el formulario principal (no se puede tener todo en esta vida).

Gracias a tod@s y un saludo

Casimiro Notevi
12-10-2011, 11:47:21
Hombre, es lo que comenté, si le pinchas al form principal y pones delante todas las demás ventanas... entonces no has hecho nada. Y eso es lo que acabas de descubrir :D
Pero, y lo bien que te lo has pasado programando y haciendo pruebas :D

Yo hace algunos años que hago los proyectos para 1024x768, aunque siempre depende de lo que estés haciendo, claro.

newtron
12-10-2011, 11:48:20
Yo hace algunos años que hago los proyectos para 1024x768, aunque siempre depende de lo que estés haciendo, claro.

Yo es que tengo muchos clientes cegatos, es a 800x600 y me chillan....

Casimiro Notevi
12-10-2011, 11:54:15
Pues nada, le vendes una pantalla más grande y problema solucionado.
Yo soy supercegato, es uno de los motivos de tener a Rompetechos de avatar, cuando leía sus historietas me identificaba mucho con él porque me pasaban cosas similares :)