Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Как раздвинуть окно

Ответить
Настройки темы
[решено] Как раздвинуть окно

Пользователь


Сообщения: 62
Благодарности: 0

Профиль | Отправить PM | Цитировать


Например есть окно 600 на 200 как сделать так чтобы при нажатии кнопки окно раздвинулось и стало бы скажем 600 на 600
И например там была бы кнопка которая востановила бы прежнии размеры
Скажем для того чтобы там прятать справочную информацию

Код: Выделить весь код
#include <GUIConstantsEx.au3>

$GUI = GUICreate("assch", 600,200)
GUISetIcon ("02.ico")

$Button1 = GUICtrlCreateButton("Справка", 450,  20, 120, 60)
$Button2 = GUICtrlCreateButton("Назад", 450,  220, 120, 60)          


GUISetState()

While 1
    $iMsg = GUIGetMsg()

    Select
        
       
		Case $iMsg = $Button1
            
		
		Case $iMsg = $Button1
		
		
		
		Case $iMsg = $GUI_EVENT_CLOSE
		     
			 Exit
    
	EndSelect
WEnd

Отправлено: 16:40, 20-07-2010

 

Аватара для Creat0R

Must AutoIt


Сообщения: 3054
Благодарности: 1009

Профиль | Сайт | Отправить PM | Цитировать


Пример:

Код: Выделить весь код
#include <GUIConstantsEx.au3>
#include <ButtonConstants.au3>
#include <WindowsConstants.au3>
#include <GUIImageList.au3>

Global $hImageList
Global $sOld_Opt_GRM = Opt("GUIResizeMode", $GUI_DOCKALL)
Global $iGUI_Height = 200

$hGUI = GUICreate("Expand GUI Example", 300, $iGUI_Height, -1, -1, -1, $WS_EX_TOOLWINDOW)

$Expand_Button = GUICtrlCreateButton("Expand", 20, 80, 80, 22, $BS_ICON)
_GUICtrlButton_SetImageEx($hImageList, $Expand_Button, @SystemDir & "\rasdlg.dll", 14)

#Region Expanded controls
GUICtrlCreateButton("Some Button", 20, 240, 80)
GUICtrlCreateButton("Other Button", 120, 240, 80)
GUICtrlCreateInput("Some Input", 20, 200, 200, 20)

Opt("GUIResizeMode", $sOld_Opt_GRM)
#EndRegion Expanded controls
;

GUISetState()

While 1
    $Msg = GUIGetMsg()

    Switch $Msg
        Case $GUI_EVENT_CLOSE
            _GUIImageList_Destroy($hImageList)
            Exit
        Case $Expand_Button
            _Toggle_ExpandControls_Proc($hGUI, $iGUI_Height, $iGUI_Height + 80, $Expand_Button)
    EndSwitch
WEnd

Func _Toggle_ExpandControls_Proc($hWnd, $iInitWndHeight, $iExpndHeight, $iExpndCtrlID, $sExpndText="Expand", $sCntrctText="Collapse")
    Local $iHeight, $sButtonText, $aSysCaptMetrics, $aSysBordMetrics

    Local $aWinSize = WinGetPos($hWnd)
    Local $aWinClientSize = WinGetClientSize($hWnd)

    Local $iBorderWidth = $aWinSize[2] - $aWinClientSize[0]
    Local $iCaptionHeight = $aWinSize[3] - $aWinClientSize[1] - $iBorderWidth

    If $aWinSize[3] > $iExpndHeight + $iCaptionHeight Then
        _GUICtrlButton_SetImageEx($hImageList, $Expand_Button, @SystemDir & "\rasdlg.dll", 14)

        $iHeight = $iInitWndHeight + $iCaptionHeight + $iBorderWidth
        $sButtonText = $sExpndText
    Else
        _GUICtrlButton_SetImageEx($hImageList, $Expand_Button, @SystemDir & "\rasdlg.dll", 16)

        $iHeight = $iExpndHeight + $iCaptionHeight + $iBorderWidth
        $sButtonText = $sCntrctText
    EndIf

    GUICtrlSetData($iExpndCtrlID, $sButtonText)
    WinMove($hWnd, "", $aWinSize[0], $aWinSize[1], $aWinSize[2], $iHeight)
EndFunc

Func _GUICtrlButton_SetImageEx(ByRef $hImageList, $nCtrl, $sIconFile, $nIconID=0, $nAlign=-1)
    If $hImageList Then _GUIImageList_Destroy($hImageList)

    $hImageList = _GUIImageList_Create(16, 16, 5, 1)
    _GUIImageList_AddIcon($hImageList, $sIconFile, $nIconID)

    Local $stBIL = DllStructCreate("dword;int[4];uint")

    DllStructSetData($stBIL, 1, $hImageList)
    DllStructSetData($stBIL, 2, 1, 1)
    DllStructSetData($stBIL, 2, 1, 2)
    DllStructSetData($stBIL, 2, 1, 3)
    DllStructSetData($stBIL, 2, 1, 4)
    DllStructSetData($stBIL, 3, $nAlign)

    Return GUICtrlSendMsg($nCtrl, $BCM_SETIMAGELIST, 0, DllStructGetPtr($stBIL))
EndFunc

-------
“Сделай так просто, как возможно, но не проще этого.”... “Ты никогда не решишь проблему, если будешь думать так же, как те, кто её создал.”

Альберт Эйнштейн

P.S «Не оказываю техподдержку через ПМ/ICQ, и по email - для этого есть форум. ©»

http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:52, 20-07-2010 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 62
Благодарности: 0

Профиль | Отправить PM | Цитировать


Спасибо Creat0R

Отправлено: 17:14, 20-07-2010 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Как раздвинуть окно

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] Как сделать чтобы дочернее окно при выходе не закрывало основное окно assch AutoIt 5 19-07-2010 02:11
Как (лучше) скрыть окно? semiono AutoIt 1 10-05-2010 13:12
Вопрос - Как убрать всплывающее окно? cesiy Защита компьютерных систем 6 10-09-2008 17:49
Интерфейс - Как изменить окно консоли на такое же, как и остальные окна текущей темы XP? Etar Microsoft Windows 2000/XP 0 02-02-2008 00:12
Как сделать ОКНО??? Gorden Вебмастеру 2 16-12-2002 19:54




 
Переход