Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

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

Ответить
Настройки темы
[решено] Передалать стандартный "InputBox" в анологичное "GUI-окно"

Аватара для sashadeg

Старожил


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

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


В стандартное окно "InputBox" нельзя вставить картинку...
Помогите пожалуйтста переделать обычный "InputBox" в анологичное "GUI-окно"...
На примере вот этого кода... Как вставить картинку я разобрался а как вставить полоску ввода информании понять не могу
Код: Выделить весь код
$1 = InputBox ("1234", "")
If @Error = 1 Then
    MsgBox(4096, "1234", "OK.  Bye!",1)
    Exit
EndIf
; функции
run("notepad.exe")
Sleep(1000)
Send($1)

Отправлено: 13:33, 04-04-2009

 

Аватара для proxy

Старожил


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

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


Вставте в ваш код скрипта регион:
Код: Выделить весь код
#region: - _MsgBox
  ...
#endregion
Вызов функции в примерах..)

Enjoy

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


Отправлено: 23:23, 04-04-2009 | #11



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

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


Аватара для Creat0R

Must AutoIt


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

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


Цитата sashadeg:
я по английски не понимаю »
В кодинге без этого почти невозможно .

Цитата sashadeg:
он ошибку выкидывает на 5 строке »
Нужно в начало добавить это:

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

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

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

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


Отправлено: 23:42, 04-04-2009 | #12


Аватара для beve

Старожил


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

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


Цитата sashadeg:
Можешь конкретно написать код чтобы был точный прототип стандартного INPUTBOX'a ??? »
Может тебе нужно просто вот это?:
Код: Выделить весь код
#include <GUIConstants.au3>

$hForm = GUICreate("Test", 221, 170)
$sInput=GUICtrlCreateInput("", 8, 100, 201, 21)
GUICtrlCreateLabel("Введите какой-то текст:", 8, 16, 127, 17)
$Ok_Button = GUICtrlCreateButton("Ок", 8, 135, 81, 25, 0)
$Cancel_Button = GUICtrlCreateButton("Отмена", 128, 135, 81, 25, 0)
GUISetState(@SW_SHOW)


While 1
$nMsg = GUIGetMsg()
Switch $nMsg
    Case $GUI_EVENT_CLOSE
        GUIDelete($hForm) ;удаляем gui, так как уже не надобно
        Exitloop ;выход только из текущего цикла While 1 ---- Wend а не закрытие всего нашего скрипта
    Case $Cancel_Button
        GUIDelete($hForm) ;удаляем gui, так как уже не надобно
        MsgBox(0,"Внимание","Была нажата кнопка отмена поэтому будет выход из цикла")
        ExitLoop
    Case $Ok_Button
        $sText = GUICtrlRead($sInput)
        if $sText=="" then
        MsgBox(0,'Внимание','Вы не ввели никакого текста')
        else
        GUIDelete($hForm) ;удаляем gui, так как уже не надобно
        MsgBox(0,"",$sText) ;можно обойтись без этого сообщения, оно нужно лишь чтобы показать что в переменной $sText уже хранится текст введенный ранее в инпут
        Exitloop
        endif
EndSwitch
WEnd
;дальше может быть любой набор команд...
Сомневаюсь, ибо это просто начало, на autoite, но всетаки...

-------
Не в кількості знань полягає освіта, а в повному розумінні і вмілому використанні того, що знаєш.


Последний раз редактировалось beve, 05-04-2009 в 00:14.

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

Отправлено: 23:56, 04-04-2009 | #13


Аватара для sashadeg

Старожил


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

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


Спасибо всем ответившим!!! beve, твоё сообщение - ТО ЧТО доХтор ПРОПИСАЛ

У меня ещё вопросик, а можно ещё несколько полосочек для ввода текста вставить в ОДНО окно? Допустим на примере кода beve?

-------
Ну вы ребята даёте...


Отправлено: 14:49, 05-04-2009 | #14


Аватара для beve

Старожил


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

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


Цитата sashadeg:
можно ещё несколько полосочек для ввода текста вставить в ОДНО окно? »
Код: Выделить весь код
#include <GUIConstantsEx.au3>

$GUI = GUICreate("AutoIt Example", 300, 160)
GUICtrlCreateLabel("Введите нужный текст во все поля:", 20, 10, 260, 20)
$Input_1 = GUICtrlCreateInput("", 20, 40, 260, 20)
$Input_2 = GUICtrlCreateInput("", 20, 70, 260, 20)
$Input_3 = GUICtrlCreateInput("", 20, 100, 260, 20)

$Ok_Button = GUICtrlCreateButton("OK", 40, 130, 60, 20)
$Cancel_Button = GUICtrlCreateButton("Отмена", 200, 130, 60, 20)
GUISetState(@SW_SHOW, $GUI)

While 1
Switch GUIGetMsg()
    Case $GUI_EVENT_CLOSE
        Exit ;тут выход вобще из скрыпта при закрытии Gui окна
    Case $Cancel_Button
        GUIDelete($GUI) ;удаляем gui, так как уже не надобно
        MsgBox(0,"Внимание","Была нажата кнопка Отмена поэтому будет выход из цикла")
        ExitLoop
    Case $Ok_Button
        $sText1 = GUICtrlRead($Input_1)
        $sText2 = GUICtrlRead($Input_2)
        $sText3 = GUICtrlRead($Input_3)
        if $sText1=="" Or  $sText2=="" Or $sText3=="" then
        MsgBox(0,'Внимание','Вы не ввели текст во всех полях')
        else
        GUIDelete($GUI) ;удаляем gui, так как уже не надобно
        MsgBox(0,"Результат",$sText1 & @CRLF &$sText2 & @CRLF & $sText3) ;можно обойтись без этого сообщения, оно нужно лишь чтобы показать что в переменных $sText1, $sText2, $sText3 уже хранится текст введенный ранее в инпуты
        Exitloop
        endif
EndSwitch
WEnd
;дальше может быть любой набор команд...
P.S. Вот по этой ссылке http://www.autoitscript.com/fileman/...ormdesign.html можеш загрузить программу KODA FormDesigner, написанную на автоите, и с её помощью нарисовать такое Gui-окно с инпутами кнопками, как тебе подходит, а названия переменных, можеш сделать хоть и как в примере выше...В программе есть Русский язык, на который можно переключится в настройках программы.

-------
Не в кількості знань полягає освіта, а в повному розумінні і вмілому використанні того, що знаєш.


Последний раз редактировалось beve, 05-04-2009 в 16:02.

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

Отправлено: 15:38, 05-04-2009 | #15


Аватара для sashadeg

Старожил


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

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


beve, ты просто... ты... ты просто ЗОЛОТО!!!!

Я удивляюсь, как у тебя благодарностей меньше чем сообщений спасибо, всё просто и понтно

-------
Ну вы ребята даёте...


Отправлено: 16:47, 05-04-2009 | #16



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Интерфейс - [решено] Как удалить папку "Моя музыка","Мои Картинки", "Мое видео"? verdix Microsoft Windows 2000/XP 3 03-10-2009 23:46
[решено] Нужна помощь с StringRegExpReplace ( "test", "PATTERN-ом", "\1"). ikif AutoIt 6 28-07-2009 20:06
Debian/Ubuntu - [решено] Пропали кнопки "свернуть","закрыть","во весь екран" в папках Alex.sys Общий по Linux 5 02-04-2009 11:13
Не получается найти все выпуски "Хакер"+"спец"+"железо" verdix Хочу все знать 5 29-11-2008 15:19
Запретить/удалить пункт "Programs" ("Программы") из меню кнопки "Start" ("Пуск") submaster Microsoft Windows NT/2000/2003 5 13-09-2006 12:29




 
Переход