Что нового

[Ошибки] GUIGetMsg(). Error: Unable to parse line или "Как я запорол калькулят"

ExplodingBanana

Новичок
Сообщения
6
Репутация
0
Код:
#include <C:\Program Files (x86)\AutoIt3\Include\GUIConstants.au3>
SelfDelete 
GUICreate ("Калькулятор", 260, 230)
$CTRL_btn1 = GUICtrlCreateButton ("1", 54, 138, 36, 29)
$CTRL_btn0 = GUICtrlCreateButton("0", 54, 171, 36, 29)
$CTRL_btn1 = GUICtrlCreateButton("1", 54, 138, 36, 29)
$CTRL_btn2 = GUICtrlCreateButton("2", 93, 138, 36, 29)
$CTRL_btn3 = GUICtrlCreateButton("3", 132, 138, 36, 29)
$CTRL_btn4 = GUICtrlCreateButton("4", 54, 106, 36, 29)
$CTRL_btn5 = GUICtrlCreateButton("5", 93, 106, 36, 29)
$CTRL_btn6 = GUICtrlCreateButton("6", 132, 106, 36, 29)
$CTRL_btn7 = GUICtrlCreateButton("7", 54, 73, 36, 29)
$CTRL_btn8 = GUICtrlCreateButton("8", 93, 73, 36, 29)
$CTRL_btn9 = GUICtrlCreateButton("9", 132, 73, 36, 29)
$CTRL_btnPeriod = GUICtrlCreateButton(".", 132, 171, 36, 29)
$CTRL_btnMClear = GUICtrlCreateButton("MC", 8, 73, 36, 29)
$CTRL_btnMRestore = GUICtrlCreateButton("MR", 8, 106, 36, 29)
$CTRL_btnMStore = GUICtrlCreateButton("MS", 8, 138, 36, 29)
$CTRL_btnMAdd = GUICtrlCreateButton("M+", 8, 171, 36, 29)
$CTRL_btnChangeSign = GUICtrlCreateButton("+/-", 93, 171, 36, 29)
$CTRL_btnDivision = GUICtrlCreateButton("/", 171, 73, 36, 29)
$CTRL_btnMultiplication = GUICtrlCreateButton("*", 171, 106, 36, 29)
$CTRL_btnSubtract = GUICtrlCreateButton("-", 171, 138, 36, 29)
$CTRL_btnAdd = GUICtrlCreateButton("+", 171, 171, 36, 29)
$CTRL_btnAnswer = GUICtrlCreateButton("=", 210, 171, 36, 29)
$CTRL_btnInverse = GUICtrlCreateButton("1/x", 210, 138, 36, 29)
$CTRL_btnSqrt = GUICtrlCreateButton("sqrt", 210, 73, 36, 29)
$CTRL_btnPercentage = GUICtrlCreateButton("%", 210, 106, 36, 29)
$CTRL_btnBackspace = GUICtrlCreateButton("Backspace", 54, 37, 63, 29)
$CTRL_btnClearE = GUICtrlCreateButton("CE", 120, 37, 62, 29)
$CTRL_btnClear = GUICtrlCreateButton("C", 185, 37, 62, 29)
$CTRL_LblMemory = GUICtrlCreateLabel("", 12, 39, 27, 26)
$CTRL_EdtScreen = GUICtrlCreateEdit("0.", 8, 2, 239, 23)
GUISetState()
while $msg <> $GUI_EVENT_CLOSE
     $msg = GUIGetMsg()
   wEnd
$CTRL_EdtScreen = GUICtrlCreateEdit (" 0.", 8, 2, 239, 23, BitOR($ES_READONLY, $ES_RIGHT), $WS_EX_STATICEDGE)
$CTRL_LblMemory = GUICtrlCreateLabel ("", 12, 39, 27, 26, $SS_SUNKEN)

При запуске выдаёт: $msg = GUIGetMsg()
^Error
Error: Unable to parse line.
Понятия не имею с чем это связано :scratch:
 

joiner

Модератор
Локальный модератор
Сообщения
3,557
Репутация
628
Re: [Ошибки] GUIGetMsg(). Error: Unable to parse line

Справку посмотри как проводится опрос событий окна
 
Автор
ExplodingBanana

ExplodingBanana

Новичок
Сообщения
6
Репутация
0
Re: [Ошибки] GUIGetMsg(). Error: Unable to parse line

Tempo сказал(а):
Ну тогда попробуйте еще раз Описание GUI - режим MessageLoop (Цикл опроса GUI
Даже после того, как я вдавил глаза в инструкцию, я не увидел ошибок (даже поставил 0 в скобки)
 

Tempo

AutoIT Гуру
Сообщения
616
Репутация
205
По сути вы пытаетесь проверить значение еще не объявленной переменной и условие не самое лучшее для вашего случая

Проще будет так если нужно лишь ожидание закрытия окна
Код:
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE


Или пример полноценного цикла опроса нужных элементов
Код:
While 1
	Switch GUIGetMsg()
		Case $GUI_EVENT_CLOSE
			Exit
		;Case $iControlID
			;Действия
	EndSwitch
WEnd
 
Верх