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

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

Ответить
Настройки темы
[решено] Вопрос по GUI

Новый участник


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

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


Помогите пожалуйста разобраться в таком вопросе:
1. вот допустим имееться такой код

$A1=GuiCtrlCreateInput("5", 100, 35, 40, 20)
$A2=GUICtrlRead($A1)

и ввел я например цифру 5

Почему, когда я пишу следующую строку
MsgBox(0,1,""& $A2 &"",1) выводится в качестве A2 какое то левое значение, а не "5"

и если я напишу
MsgBox(0,1,""& GUICtrlRead($A1) &"",1) выводится именно то, что я ввел, т.е. "5"
Как правильно присвоить переменной вводимое значение?

2. И вот аналогичный вопрос про галочку
$A1=GuiCtrlCreateCheckbox("", 120, 78, 40, 20)
$A2=GUICtrlRead($A1)
И странно то, что при нажатой возвращаеться единица, а при отжатой возвращаеться 4. И мне кажеться, что я что то не так делаю, подскажите пожалуйста что именно.

Отправлено: 14:24, 28-06-2009

 

Аватара для Medic84

$AutoITer


Автор проектов


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

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


Цитата Creat0R:
И? Там же GUICtrlRead() читается один раз и в начале, оно и логично. »
Значит все прекрасно работает

А мои попытки перестроить ее не увенчаличь успехом

-------

AutoIT Русское сообщество| Моя лаборатория


Отправлено: 15:55, 28-06-2009 | #11



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

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


Аватара для Creat0R

Must AutoIt


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

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


Цитата proxy:
думаешь сам начать? или открыть ветку и собирать переводы »
См. ранние посты.

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

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

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


Отправлено: 17:51, 28-06-2009 | #12


Новый участник


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

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


Перечитал все, но так и не понял, где ошибка, не затруднит ли кого нить в кратце изложить ответ на мой вопрос? Ну никак без помощи не получаеться.

Отправлено: 20:51, 28-06-2009 | #13


Аватара для FlatX007

Ветеран


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

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


Значение в переменую $A2 записывается до того как оно было изменено.

т.е. при отрисовке GUI окна в переменную $A2 записыватеся значение 5 которое считывает функция GUICtrlRead($A1) из поля Инпут.

Отправлено: 21:13, 28-06-2009 | #14


Аватара для proxy

Старожил


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

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


Цитата DenNC:
Перечитал все, но так и не понял, где ошибка, не затруднит ли кого нить в кратце изложить ответ на мой вопрос? Ну никак без помощи не получаеться. »
И так....

Задача: После нажатия на кнопку "Start":
1. Прочитать данные из "GuiCtrlCreateInput"
2. Вывести результат в "MsgBox".

Идентификатор (указатель) на "GuiCtrlCreateInput": "$A1"
Соообщение "MsgBox" выводится в функции: "Start"

Алгоритм действий пользователя, на примере твоего скрипта:
1. После нажатия кнопки "Start" - вызывается функция "Start"
2. Вызванная функция "Start" выводит "MsgBox" сообщение, которое отображает текст, которые содержится в переменной "$A2"

Вопрос 1: Как и когда поподает текст в переменную "$A2" ?
Ответ: В примере твоего кода, в переменную "$A2" текст записывается один-единственный раз, сразу после создания "GuiCtrlCreateInput":

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

		; TAB
		GuiCtrlCreateTab(10, 0, 400, 260)
		GuiCtrlCreateTabItem("main")
		GuiCtrlCreateLabel("Number", 20, 40)
		; UPDOWN
		$A1=GuiCtrlCreateInput("5", 100, 35, 40, 20)
		GuiCtrlCreateUpDown(-1)
		$A2=GUICtrlRead($A1)


	$YesID = GUICtrlCreateButton("Start", 10, 260, 100, 30)
	GUICtrlSetOnEvent($YesID, "Start")

...........
Вопрос 2: Следуя поставленной задаче, почему в твоем скрипте не выполняется пункт № 1?

Что нужно сделать, что бы было правильно: При каждом вызове функции "Start" считывать данные из "GuiCtrlCreateInput" и записывать результат в переменную "$A2".


Теперь понял суть?
Сможешь сам исправить свой скрипт?

-------
Мысли-читатель сломался, может подробней расскажите?
А где исходный код? Или мы стихи обсуждаем?! )) Настройки темы > Решено ?


Отправлено: 21:25, 28-06-2009 | #15


Новый участник


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

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


Огромное спасибо. Сча буду исправлять ошибки.

Отправлено: 21:28, 28-06-2009 | #16



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Вопрос по GUI - GUICtrlSetData Space-06 AutoIt 20 03-08-2009 23:37
[решено] Вопрос по GUI FlatX007 AutoIt 5 22-05-2009 16:17
Не работает GUI после выхода другова GUI sashadeg AutoIt 3 15-05-2009 22:03
[решено] GUI и трей speechless AutoIt 2 10-05-2009 18:38
[решено] [GUI] Вопрос с отображением формы и циклом D_Master AutoIt 4 05-03-2009 19:20




 
Переход