Buenas, Me e pasado varios días buscando en Internet la forma de Crear una Guicreate que se pueda maximizar y que todos los componentes se auto ajusten con ella a la resolución de la pantalla o bien poner el ratón en el borde de la GUIcreate y hacerla lo grande que uno quiera y que todo se valla ajustando solo.
Poner que una Guicreate se haga grande es fácil, lo que pasa es que los componentes se quedan donde están o se descolocan y queda fatal.
Espero que me podáis ayudar. Gracias.
[Solucionado]Maximziar una Ventana GUI junto a los Elementos
[Solucionado]Maximziar una Ventana GUI junto a los Elementos
Última edición por dacu el 03 Dic 2012, 21:11, editado 1 vez en total.
- Ximorro
- Profesional del Autoit
- Mensajes: 1500
- Registrado: 10 Jul 2009, 12:35
- Ubicación: Castellón, España
Re: Maximziar una Ventana GUI junto a los Elementos.
Para recolocar/escalar los controles cuando el formulario se redimensiona se usa la función GUICtrlSetResizing.
Por ejemplo en esta prueba que hice puedes ver que al cambiar el tamaño del formulario el input se hace largo/corto, el botón se mueve en horizontal para estar siempre a la derecha del formulario y la caja de texto (en realidad un explorador de internet) se redimensiona para tomar el resto del espacio disponible.
Pon alguna palabra y dale a buscar, y luego redimensiona y verás que el texto del navegador se actualiza en tiempo real.
Con un poco de pericia puede hacerse que parezca que los controles se redimensionan, el problema es que sólo cambiarás el tamaño del control, no es que lo escales (o sea fuentes, bordes, etc seguirán siendo iguales).
Por ejemplo en esta prueba que hice puedes ver que al cambiar el tamaño del formulario el input se hace largo/corto, el botón se mueve en horizontal para estar siempre a la derecha del formulario y la caja de texto (en realidad un explorador de internet) se redimensiona para tomar el resto del espacio disponible.
Pon alguna palabra y dale a buscar, y luego redimensiona y verás que el texto del navegador se actualiza en tiempo real.
Código: Seleccionar todo
#include <GUIConstants.au3>
#include <WindowsConstants.au3>
;#include <ie.au3>;no es necesario, solo si usas funciones ie
$GuiDict = GUICreate("RAE", 300, 451, 193, 115, BitOr($GUI_SS_DEFAULT_GUI,$WS_SIZEBOX))
$IEObj = ObjCreate("Shell.Explorer.2")
$IEctrl = GUICtrlCreateObj($IEObj, 0, 26, 300, 408)
GUICtrlSetResizing(-1, $GUI_DOCKBORDERS)
$Input_palabra = GUICtrlCreateInput("", 3, 3, 220, 20)
GUICtrlSetResizing(-1, $GUI_DOCKRIGHT + $GUI_DOCKLEFT + $GUI_DOCKHEIGHT)
$botBuscar = GUICtrlCreateButton("Buscar", 226, 0, 73, 25, 0)
GUISetState(@SW_SHOW)
$palabra=""
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $botBuscar
$palabra=GUICtrlRead($Input_palabra)
; $url="http://buscon.rae.es/draeI/SrvltGUIBusUsual?TIPO_HTML=2&TIPO_BUS=3&LEMA=" & $palabra
$url="http://lema.rae.es/drae/srv/search?type=3&origen=RAE&val=" & $palabra
$IEObj.navigate2($url)
EndSwitch
WEnd
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
Re: Maximziar una Ventana GUI junto a los Elementos.
Justo lo que quería. Muchas Gracias. Voy a seguir con mis aplicaciones.
Un placer.
Saludos.
Un placer.
Saludos.
- Ximorro
- Profesional del Autoit
- Mensajes: 1500
- Registrado: 10 Jul 2009, 12:35
- Ubicación: Castellón, España
Re: Maximziar una Ventana GUI junto a los Elementos.
Me alegro de que sea lo que querías.
Fíjate que en la ayuda de cada función de creación de control (los GuiCtrlCreateXXXX) por el final de la explicación siempre dice cuál es el "Resizing" por defecto del control, generalmente ya tienen algo asignado, por eso se te movían o escalaban sin haberlo especificado.
Fíjate que en la ayuda de cada función de creación de control (los GuiCtrlCreateXXXX) por el final de la explicación siempre dice cuál es el "Resizing" por defecto del control, generalmente ya tienen algo asignado, por eso se te movían o escalaban sin haberlo especificado.
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)