none
Ejecutar Formulario al centro RRS feed

  • Pregunta

  • Buenas

    Programo en vb.net

    Tengo como 3 formularios, que no se ejecutan el centro del escritorio.

    Quiero resaltar que el formulario en su propiedad: StartPosition, tiene: CenterScreen

    Incluso en el Load del formulario tengo:

    Me.StartPosition = FormStartPosition.CenterScreen

    Realmente no sé cuál es el misterio, esto solo pasa con tres formularios, los demás salen bien.

    El formulario cuando se ejecuta, sale a la derecha.

    Por favor, no sé qué hacer.

    • Cambiado Enrique M. Montejo viernes, 2 de febrero de 2018 16:33 Pregunta relacionada con Windows Forms.
    martes, 30 de enero de 2018 22:23

Respuestas

  • Gracias a todos, ya el problema está resuelto 100x%

    en el Load del formulario, coloqué este codigo: 

     Me.Size = New System.Drawing.Size(969, 715)
            Me.Left = (Screen.PrimaryScreen.WorkingArea.Width - Me.Width) \ 2
            Me.Top = (Screen.PrimaryScreen.WorkingArea.Height - Me.Height) \ 2

    • Marcado como respuesta EliannyRD viernes, 2 de febrero de 2018 23:36
    viernes, 2 de febrero de 2018 23:35

Todas las respuestas

  • Hola Elyann.

    Prueba en el Load de cada uno de los 3 formularios que no se centran bien los siguiente.

    Location = Screen.PrimaryScreen.WorkingArea.Location
            Size = Screen.PrimaryScreen.WorkingArea.Size
            WindowState = FormWindowState.Maximized

    Un cordial saludo.

    Gemma

    • Propuesto como respuesta Pablo Rubio miércoles, 31 de enero de 2018 18:56
    • Votado como útil Enrique M. Montejo miércoles, 31 de enero de 2018 19:32
    miércoles, 31 de enero de 2018 6:43
  • Para ver lo que pasa podrias enviar una imagen de cualquier formulario que no se te centra como queda en la pantalla.

    Tambien si puedes pegame las propiedades del formulario en imaen mismo.

    miércoles, 31 de enero de 2018 7:18
  • No se muy bien que conseguirás con eso, por lo que veo que se le maximice el formulario, cuadno lo que quiere es centrarlo, quizás se me escapa algo.

    miércoles, 31 de enero de 2018 7:21
  • Gracias, pero lamentablemente el formulario sale maximizado. 
    miércoles, 31 de enero de 2018 20:32
  • El formulario es modal ?

    Por que usas el autoscalemode con font ?? es necesario ?

    - Si el formulario es modal entonces deberás centrarlo tu manualmente. Con las propiedades left y top, el left sera el width del parent\2 - el width de formulario\ 2 y el top lo mismo pero con la propiedad  height /2  del parent - menos el height de formulario \ 2.

    - Lo del autoescale me da que podria ser tambien la causa en el caso que el form no sea modal.

    TAambíen revisa que después de cargarlo en el load o show no lo cambies de posicion con las propiedades left y/o top.

    Otro problema podria ser que el formulario sea child del formulario padre del tipo MDI. Pero por la imagen no creo.


    • Editado vyrcyrus_ miércoles, 31 de enero de 2018 22:28
    miércoles, 31 de enero de 2018 22:27
  • el codigo me quedó asi: 

     Me.Left = (Screen.PrimaryScreen.WorkingArea.Width - Me.Width) \ 2
            Me.Top = (Screen.PrimaryScreen.WorkingArea.Height - Me.Height) \ 2

    el formulario sale en el centro pero no se ve completo

    • Propuesto como respuesta Pablo Rubio viernes, 2 de febrero de 2018 16:01
    • Votado como útil Enrique M. Montejo viernes, 2 de febrero de 2018 16:33
    jueves, 1 de febrero de 2018 0:56
  • mandame foto de como te queda.

    Mandame tamño o resolucion de la pantalla.

    Confirmame que el padre está maximizado o no.

    y los valores de width y height de form padre e hijo.

    jueves, 1 de febrero de 2018 6:56
  • Gracias a todos, ya el problema está resuelto 100x%

    en el Load del formulario, coloqué este codigo: 

     Me.Size = New System.Drawing.Size(969, 715)
            Me.Left = (Screen.PrimaryScreen.WorkingArea.Width - Me.Width) \ 2
            Me.Top = (Screen.PrimaryScreen.WorkingArea.Height - Me.Height) \ 2

    • Marcado como respuesta EliannyRD viernes, 2 de febrero de 2018 23:36
    viernes, 2 de febrero de 2018 23:35