Tengo un formulario que debe ser maximizado en VB.net. No quiero que el usuario pueda cambiar su tamaño o moverlo. ¿Cómo puedo hacer esto?¿Cómo evito que el usuario cambie el tamaño de un formulario?
Respuesta
Establezca las propiedades resaltadas. Conjunto MaximimSize y MinimizeSize propiedades del mismo tamaño
Para evitar que los usuarios cambiar el tamaño, ajustar el FormBoderStyle a Fixed3D o FixedDialog desde la ventana de propiedades o de código
frmYour.BorderStyle = System.WinForms.FormBorderStyle.Fixed3D
Y establecer la propiedad WindowState en maximizada, establecer las propiedades MaximizeBox y MinimizeBox a falso.
Para evitar que el usuario se mueva, anular WndProc
Protected Overrides Sub WndProc(ByRef m As Message)
Const WM_NCLBUTTONDOWN As Integer = 161
Const WM_SYSCOMMAND As Integer = 274
Const HTCAPTION As Integer = 2
Const SC_MOVE As Integer = 61456
If (m.Msg = WM_SYSCOMMAND) And (m.WParam.ToInt32() = SC_MOVE) Then
Return
End If
If (m.Msg = WM_NCLBUTTONDOWN) And (m.WParam.ToInt32() = HTCAPTION) Then
Return
End If
MyBase.WndProc(m)
End Sub
wow ¿cuál es el significado de todos esos enteros? –
constantes para pasar a la API de Windows - cada número entero representa un comando de Mensaje de Windows y el correspondiente parámetro – amazedsaint
Esto funciona mejor, evita que el usuario arrastre el formulario a otro monitor también (un problema que tengo, no estoy seguro de si es ganador 8 o múltiple monitores que causan esto). Mucky (no es culpa de los que responden), pero la respuesta es correcta. –
Puede eliminar la interfaz de usuario para controlar esto con:
frmYour.MinimizeBox = False
frmYour.MaximizeBox = False
Ajuste el estilo de inicio de la ventana maximizada. Luego, esconda los botones minimizar y maximizar.
//Set fixed border
yourForm.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D
//Set the state of your form to maximized
yourForm.WindowState = FormWindowState.Maximized
//Disable the minimize box and the maximize box
yourForm.MinimizeBox = False
yourForm.MaximizeBox = False
Establezca el tamaño mínimo y máximo de forma en los mismos números. No mostrar los botones mínimo y máximo.
Como dijo @LarsTech anteriormente, aún puede extraer y cambiar el tamaño del formulario manualmente en este escenario, por lo que esta no es la respuesta completa, tal vez parte, pero no evitaría el problema en su totalidad –
añadir algo de código al evento Form Load:
me.maximumsize = new size(Width, Height)
me.minimumsize = me.maximumsize
me.maximizebox = false
me.minimizebox = false
Ejemplo: Para una altura de Forma y anchura de 50 píxeles cada una:
me.maximumsize = new size(50, 50)
me.minimumsize = me.maximumsize
me.maximizebox = false
me.minimizebox = false
Tenga en cuenta que la configuración maximumsize
y minimumsize
a t El mismo tamaño que se muestra aquí evita el cambio de tamaño del formulario.
Hay una opción en vb.net que le permite hacer todo esto.
El usuario no será capaz de cambiar el tamaño de la forma o moverlo, aunque hay otras maneras, creo que este es el mejor.
La propiedad bloqueada es "tiempo de diseño" -solo! –
Simplemente cambie esta configuración en el Explorador de soluciones.
MaximizeBox = False
MinimizeBox = False
Las otras cosas como ControlBox, Bloqueado y FormBorderStyle son extra.
'Las otras cosas como ControlBox, Locked y FormBorderStyle son adicionales. Si FormBorderStyle no está configurado en un estilo de tipo Fixed o None, el usuario puede cambiar el tamaño del formulario. – LarsTech
- 1. ¿Cómo evito que EditText cambie el tamaño cuando el usuario está escribiendo?
- 2. ¿Cómo evito que el WPF GridSplitter cambie el tamaño de mi cuadrícula?
- 3. ¿Cómo evito que Visual Studio cambie el tamaño de mis controles?
- 4. ¿Cómo evito que Visual Studio cambie el tamaño de los paneles laterales cuando se desancla/fija?
- 5. ¿Cómo evitar que el usuario cambie el tamaño de las columnas de QTableWidget?
- 6. C# cómo evitar que el usuario cambie el tamaño de la ventana de mi aplicación?
- 7. Cómo evitar que el usuario cambie la página con jQuery
- 8. WPF: ¿Cómo hacer que el lienzo cambie el tamaño automáticamente?
- 9. ¿Cómo puedo fijar el tamaño del formulario en un C# aplicación de Windows Forms y no dejar que el usuario cambie su tamaño?
- 10. ¿Cómo especifico que un formulario VB6 no se puede cambiar de tamaño?
- 11. ¿Cómo evito que Emacs cambie mis búferes divididos?
- 12. Qt: ¿cómo hacer que mainWindow cambie automáticamente el tamaño cuando se cambie el tamaño del widget central?
- 13. Cómo evito cambiar el tamaño en el iPad
- 14. ¿Cómo evito que Visual Studio cambie el nombre de mis controles?
- 15. ¿Cómo evito que un evento on.submit cambie/vuelva a cargar la página?
- 16. ¿Cómo puedo hacer que mi formulario cambie de tamaño más fácilmente?
- 17. Maximizar una ventana mediante programación y evitar que el usuario cambie el estado de Windows
- 18. Deshabilitar el cambio de tamaño de un formulario de Windows
- 19. Google Maps: cómo evitar que InfoWindow cambie el mapa
- 20. Cómo evitar que UIBarButtonItem con atributos personalizados cambie de tamaño
- 21. ¿Cómo evito que la aplicación finalice cuando cierro el formulario de inicio?
- 22. Disminuir el tamaño de un formulario de ventana
- 23. Impedir que un usuario elimine, mueva o cambie el nombre de un archivo
- 24. Cambie el tamaño del panel de forma dinámica
- 25. cambiar el tamaño y ajustar los controles de formulario según el tamaño del formulario
- 26. PhoneGap: ¿Hay alguna manera de evitar que el teclado cambie el tamaño de la vista?
- 27. Cómo evitar que Soft Keyboard cambie el tamaño de la imagen de fondo
- 28. ¿Cómo evito que un GtkAspectFrame pierda espacio?
- 29. Evitar que los usuarios cambien el tamaño de la ventana/tamaño del formulario
- 30. ¿Debo permitir que el usuario cambie el correo electrónico cuando usa el correo electrónico como nombre de usuario?
@Powerlord ¿Cómo sabes que no se trata de una especie de reproductor de películas o juego en el que * quieres * hasta el último píxel? –
Microsoft proporciona un ejemplo completo como parte de su documentación para [Form.FormBorderStyle Property] (http://msdn.microsoft.com/en-us/library/system.windows.forms.form.formborderstyle%28v=vs.110 % 29.aspx). – DavidRR