Foros aprenderaprogramar.com
Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: Dan_SB en 17 de Abril 2016, 05:57
-
Hola! buenas noches!
Hace tiempo que no me presentaba por aquí hehe... espero que todos esten bien!!! He venido aqui con una pregunta que he hecho hace tiempo y que aun no he recibido una solución. Resulta que hice un programa en VB.NET conectado a una base de datos Access... hice el instalador, el programa se abre, se conecto con la base de datos... todo bien, todo perfecto. Pero el problema comienza cuando noto esto:
(http://i.imgur.com/Br9hGJv.png)
Explico... (Aunque creo que ya se noto muy claro a que voy a llegar). La imagen a tu izquierda, es el programa instalado en otra computadora de mi casa, Y la imagen de la derecha es el programa corriendo en la computadora donde lo desarrolle originalmente.
Como ven, mi form (o ventana), en la imagen de la derecha no me esta mostrando el contenido completo del mismo... (Se puede notar en el circulo rojo en la primera imagen... apenas se ve un pedazo del boton "Ocultar Ventana", mientras que en la imagen de la derecha, se puede apreciar perfectamente... asi debería salir en todas las maquinas).
No es el unico form con este problema, casi todas las demas ventanas me estan mostrando un pedazo del contenido del mismo... he investigado pero las soluciones que me han dado, las he probado pero ninguna me ha funcionado... quizas los que me estan dando problemas son los controles de la misma ventana... he leido que tambien los controles del form se deberian reajustar junto con el form a la resolucion de la computadora. Mi pregunta seria:
¿Como lograría que mi form y sus controles se adapten a todas las resoluciones de pantallas?... Me tiene con un dolor de cabeza esto :(
(Si no me logre explicar, ruego que me lo señalen).
Muchísimas gracias de antemano!
-
Hola Dan! Me alegro de verte por aquí ;)
Supongo que ya habrás probado de todo pero lo único que se me ocurre decirte es que hagas más pruebas.
Probar a establecer redimensionado para todos los controles según la resolución de pantalla actual.
Dim DesignScreenWidth As Integer = 1280
Dim DesignScreenHeight As Integer = 1024
Dim CurrentScreenWidth As Integer = Screen.PrimaryScreen.Bounds.Width
Dim CurrentScreenHeight As Integer = Screen.PrimaryScreen.Bounds.Height
Dim RatioX as Double = CurrentScreenWidth / DesignScreenWidth
Dim RatioY as Double = CurrentScreenHeight / DesignScreenHeight
For Each iControl In Me.Controls
With iControl
If (.GetType.GetProperty("Width").CanRead) Then .Width = CInt(.Width * RatioX)
If (.GetType.GetProperty("Height").CanRead) Then .Height = CInt(.Height * RatioY)
If (.GetType.GetProperty("Top").CanRead) Then .Top = CInt(.Top * RatioX)
If (.GetType.GetProperty("Left").CanRead) Then .Left = CInt(.Left * RatioY)
End With
Next
DesignScreenWidth se referiría a el ancho de la pantalla donde hiciste el diseño original en pixeles y DesignScreenHeight lo mismo para el alto.
Saludos!