Получение данныз из формы в GUI c последующей отправкой в статус-бар.

Ответить
Аватара пользователя
winipox

Получение данныз из формы в GUI c последующей отправкой в статус-бар.

Сообщение winipox »

Здравствуйте, возникла такая проблема - необходимо из созданной формы получить текст в статус-бар в следующем коде:



Код:

Код: Выделить всё

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 299, 253, 254, 124)
$Input1 = GUICtrlCreateInput("Input1", 8, 16, 81, 21)
$StatusBar1 = _GUICtrlStatusBar_Create($Form1)
_GUICtrlStatusBar_SetText($StatusBar1, "03   "& GUIctrlread($Input1))
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
    EndSwitch
WEnd

Так как написано тут в статус-баре пишет Input1, но не как не то что я пишу после запуска, к чему и стремлюсь.
Аватара пользователя
madmasles

Re: Получение данныз из формы в GUI c последующей отправкой в статус-бар.

Сообщение madmasles »

winipox,

Попробуйте так.

Код:

Код: Выделить всё

#include 
#include 
#include 
#include 
$hForm = GUICreate('Test', 299, 253, 254, 124)
$nInput = GUICtrlCreateInput('Input', 8, 16, 81, 21)
$hStatusBar = _GUICtrlStatusBar_Create($hForm)
_GUICtrlStatusBar_SetText($hStatusBar, '03   ' & GUICtrlRead($nInput))
GUISetState()
GUIRegisterMsg($WM_COMMAND, 'WM_COMMAND')
While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
    EndSwitch
WEnd
Func WM_COMMAND($hWnd, $imsg, $iwParam, $ilParam)
    Local $nNotifyCode, $nID
    $nNotifyCode = BitShift($iwParam, 16)
    $nID = BitAND($iwParam, 0xFFFF)
    Switch $hWnd
        Case $hForm
            Switch $nID
                Case $nInput
                    Switch $nNotifyCode
                        Case $EN_UPDATE;$EN_CHANGE
                            _GUICtrlStatusBar_SetText($hStatusBar, '03   ' & GUICtrlRead($nInput))
                    EndSwitch
            EndSwitch
    EndSwitch
    Return $GUI_RUNDEFMSG
EndFunc   ;==>WM_COMMAND
Аватара пользователя
winipox

Re: Получение данныз из формы в GUI c последующей отправкой в статус-бар.

Сообщение winipox »

В посте выше все более-мене понятно за исключением самих принципов языка autoit. Какие операции необходимо прописывать чтобы данные из гуй можно было обрабатывать(а именно читать - посылать)?
Аватара пользователя
ven00m

Re: Получение данныз из формы в GUI c последующей отправкой в статус-бар.

Сообщение ven00m »

Еще вариант (попроще):



Код:

Код: Выделить всё

#include 
#include 
#include 
#include 
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 299, 253, 254, 124)
$Input1 = GUICtrlCreateInput("Input1", 8, 16, 81, 21)
$StatusBar1 = _GUICtrlStatusBar_Create($Form1)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
$input1old = GUIctrlread($Input1)
While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
    EndSwitch
    if GUIctrlread($Input1)$input1old then
    _GUICtrlStatusBar_SetText($StatusBar1, "03   "& GUIctrlread($Input1))
    $input1old = GUIctrlread($Input1)
    Endif
WEnd
Ответить

Вернуться в «AutoIt»