Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Evitar que el formulario venga al frente (https://www.clubdelphi.com/foros/showthread.php?t=76135)

newtron 11-10-2011 09:52:55

Evitar que el formulario venga al frente
 
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é:
Cita:

Empezado por casimiro
¿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

Cita:

Empezado por Casimiro Notevi (Mensaje 415208)
je, je, je... ayer te pregunté:

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

Cita:

Empezado por Casimiro Notevi (Mensaje 415208)
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

Cita:

Empezado por Casimiro Notevi (Mensaje 415213)
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

Cita:

Empezado por newtron (Mensaje 415211)
.......................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

Cita:

Empezado por Caro (Mensaje 415221)
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

Cita:

Empezado por newtron (Mensaje 415263)
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

Cita:

Empezado por Al González (Mensaje 415277)
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

Cita:

Empezado por Casimiro Notevi (Mensaje 415329)
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 :)


La franja horaria es GMT +2. Ahora son las 22:10:22.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi