Быстрый заказ, позвонить +7-978-708-85-73
Дроссель Amadeus Productions. Быстрый заказ по телефону.
(Viber, WhatsApp, Telegram)
Amadeus Productions Дроссельный узел на Lancer IX 1.6 (4G18), 2.0 (4G63) и другие моторы
Ремкомплект РХХ на Mitsubishi Lancer IX, 1.6 (4G18), MD619857, 1450A116
Облегченный маховик на 1.6 (4G18) и другие моторы
Облегченные шкивы на 1.6 (4G18) и другие моторы
One-touch или "Ленивые поворотники"

 
Reply to this topicStart new topic
> Кружок юного КОДЕРА [Лекции], Тут мы только читаем!
andr_mozg
сообщение 21.11.2013, 18:58
Сообщение #1


7*#2&$%@
*******

Группа:
Технический Маньяк
Сообщений: 1845
Регистрация: 9.10.2011
Из: Москва, Дмитровское ш.
Вне форума


Репутация:   71  


Прикрепленное изображение


Тут я попробую рассказать как писать скрипты на AutoIT и убедить в том что тут нет нечего сложного.

Напутствие, для юного кодера

1. Буду стараться объяснять на пальцах (без жесткой терминологии)
2. Будит выложен Букварь, по нему необходимо делать внеклассное чтение.
3. Если есть вопросы, задаем их в соответствующей теме.
4. Все уроки надо повторять и делать все самим.
5. Да, при желании научу и блондинку. laugh.gif

Я не профессиональный программе, и мои программы далеки от совершенства, но они бт.. ть работают, и ваши будут, может код не красивый и правила кодерские мы нарушаем но как говорится - «гребем как можем» biggrin.gif .



Обсуждение >> ТУТ


P.S. почему AutoIT ?
- удобный редактор
- простой язык, прощает много косяков
- функционал постоянно расширяется, и возможности огромны.
- Пользоваться можно на халяву smile.gif


--------------------
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
andr_mozg
сообщение 21.11.2013, 19:30
Сообщение #2


7*#2&$%@
*******

Группа:
Технический Маньяк
Сообщений: 1845
Регистрация: 9.10.2011
Из: Москва, Дмитровское ш.
Вне форума


Репутация:   71  


Урок #1 Установка и подготовка к работе.

1. Скачиваем саму программу AutoIT
Прикрепленный файл  autoit_v3_setup.zip ( 7,02 мегабайт ) Кол-во скачиваний: 330

2. Распаковываем и запускаем.

3. При инсталяции, программа как обячно спросит куда ставить , нечего не меняем, все как есть...

НО будит вопрос что делать при запуски файлов с расширением *.au3
как на скриншоте
Прикрепленное изображение

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

4. Скачать и установить редактор.

Прикрепленный файл  SciTE4AutoIt3.zip ( 5,97 мегабайт ) Кол-во скачиваний: 349


5. Создаем папку, где будим все хранить, напримр с именем AutoIT

6. Скачиваем Азбуку , распаковываем и кладем в созданную папку.
Прикрепленный файл  AutoIt3_2_5_4_ru.zip ( 1,25 мегабайт ) Кол-во скачиваний: 367


7. Открываем азбуку и смотрим как устроен файл формата CHM

Прикрепленное изображение


Слева вверху три вкладки Содержание Указатель Поиск

Пока нас интересует вкладка Содержание

Сдесь представлены разделы и подразделы (вобщем главы, подглавы и страницы)


ДЗ smile.gif Домашнее задание (а вы как хотели на вечернем учиться:)))))) )

Открываем Азбуку, необходимо прочитать на вкладке Содержание первую страницу - Введение




--------------------
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
andr_mozg
сообщение 24.11.2013, 14:50
Сообщение #3


7*#2&$%@
*******

Группа:
Технический Маньяк
Сообщений: 1845
Регистрация: 9.10.2011
Из: Москва, Дмитровское ш.
Вне форума


Репутация:   71  


Урок #2 Знакомство с редактором.

1. В ранее созданной папке, нажимаем на пустое место и тыкаем правой кнопкой мыши.
Прикрепленное изображение

2. В меню выбираем Создать и из выпадающего списка выбираем AutoIT V3 Script (ну или что то похожее)
3. Новый файл называем Script_1 (имена используем с латинскими буквами, пробелы заменяем нижним подчеркиванием) (расширение файлов скриптового языка AutoIT . au3)
4. Если в первом уроки все делали по инструкции то просто открываем, кликнув два раза мышкой, если нет то правой кнопкой мыши и из меню выбираем Edit Script
5. Открывается редактор и видим примерно такую картину.
Прикрепленное изображение


6. Что мы видим
- сверху в окне редактора - меню File / Edit / Search и т.д. (повторяет меню обычного текстового редактора, за исключением пары пунктов, об этом чуть позже.)
- слева цыфирки от 1 до 13 - это строки кода, вещь нужная и полезная.
- В основном окне где мы пишим зеленые букавки, это коментарий.
Коментарий вещь полезная и нужная (мы можем оставлять пометки, например после написанной строчки кода или в заголовки с описанием скрипта)
Коментарии бывают двух видов:
; точка с запятой, все что далее после нее в приделах одной строки! это и есть коментарий (в редакторе зеленый цвет шрифта)
#cs и #ce - это зарезервированные слова, все что между ними коментарий,
первой идет надпись #cs потом #ce (обычно применяют для закоментирования большого числа строк)
Коментарий обычно используют, для того что бы оставить подсказку в коде или временно не выполнять часть кода.

7. Текст коментария чуть отредактируем (я буду показывать то что должно получится.)
Код
#cs ----------------------------------------------------------------------------

Script Name: Мой первый скрипт

#ce ----------------------------------------------------------------------------

; Script Start - Add your code below here


8. Открываем пункт меню Tools
Прикрепленное изображение

- для запуска на выполнения скрипта , есть пункт меню GO (мы не будим использовать меню для этого просто запоминаем что необходимо использовать клавишу F5 )
- Если необходимо прирвать скрипт то есть пункт меню Stop Executing (пользуем горячии коавиши - Ctrl + Break)

9. Не забываем что горячии клавиши будут работать только в том случаи если окно редактора активно!!! тоесть сперва мы тыкаем в редактор потом уже пробуем нажимать!!

10. Нажимаем F5

11. В нижней части появляется окно дэбагера (там мы видим иныу по тому как отработал скрипт)
Прикрепленное изображение


12. Рассмотрим последнию строку
Код
>Exit code: 0    Time: 0.670


Exit code: 0 - значит что ошибок выполнения нет.
Time: 0.670 - время выполнения скрипта.

13. Не забываем что то что закоментировано, компилятор пропускае, в итоге для компилятора мы запускаем пустой файл.


ДЗ

На выхи не задаю, не зверь же smile.gif))






--------------------
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
andr_mozg
сообщение 27.11.2013, 18:46
Сообщение #4


7*#2&$%@
*******

Группа:
Технический Маньяк
Сообщений: 1845
Регистрация: 9.10.2011
Из: Москва, Дмитровское ш.
Вне форума


Репутация:   71  


Урок #3 Первый скрипт.


1. Открываем наш созданный скрипт (как и где, смотрим прев. уроки)

2. На новой строке набираем Ms (редактор сам нам подскажит что за функции есть в стандартной библиотеке)
Прикрепленное изображение


правильно - Msgbox (эта функция позволит нам вывести на экран окно с нашим текстом.)

3. Нажимаем Ентер, и редактор допишит с Ms до Msgbox, ставим скобку и видим
Прикрепленное изображение

Редактор подскахит какие у данной функции необходимые параметры

- Flag цифровое значения, все варианты описаны в хелпи. от него зависит значек и наличие и значения кнопок.
- Title заголовок окна
- Text текст выводимый в окне
- Timeout это время через которое закроется окно само (квадратные скобки говарят о том что эти параметры не обезательные (без них работать будит) )
- следующий параметр нам ненужен, забыли про него.

4. Значит после скобки пишим,
первый - 0
воторой "Мой первый скрипт"
третий "Я это сделал... !!!"

Параметры й всех функций пишим в круглых скобках, если их больше 2х, то через щапятую, если это текст то в кавычках - таких ""
так же пишим 4ый параметр - 10 но без запятой (это неверно, но надо проверить как это работает)
Получили примерно следующее.

Код
MsgBox(0,"Мой первый скрипт","Я это сделал...!!!"10)


Мы как и положено указали 3ри обезательных параметра, через запятую, текст указали в кавычках, 4тый параметр указали неверно (без запятой) но все это в скобках.

5. Запускаем Скрипт на выполнение (Запоминаем - F5) и что мы видим в нижнем окне?
Прикрепленное изображение


чтож нам понаписали????

D:\AutoIT_book\Script_1.au3(13,50) : ERROR: syntax error - в таком то скрипте в строке 13! символ 50! какая то ошибка синтаксиса.

Далее нам показывают еще более конкретно где косяк, но нам показывая строку и так всегда будит все понятно (просто берем и все проверяем, где непоставили кавычки или запятую или еще чего)


6. Ставим запятую, и получаем следущее
Код
MsgBox(0,"Мой первый скрипт","Я это сделал...!!!",10)


7. Запускаем и радуемся, видим следующее.

Прикрепленное изображение



8. Через 10сек. (4тый параметр) который мы указали окно закроется само.

9. В нижним окне по завершению видим

Код
>Exit code: 0    Time: 10.650


То есть скрипт выполнен без ошибок и указано время выполниния.


-------------------------- ДЗ ------------------------------------

Открываем Азбуку

Вторая вкладка - Указатель

Находим Msgbox.

Читаем, особенно внимательно
Цитата
Замечания

Значением параметра flag может быть комбинация следующих значений:



____________ Задачи!

1. Необходимо сделать так что бы появился восклицательный знак в нашем окне. (то которое мы делали в этом уроки smile.gif )

2. В нашем окне надо сделать вопросительный знак и две кнопки OK и Cancel














--------------------
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
andr_mozg
сообщение 1.12.2013, 19:00
Сообщение #5


7*#2&$%@
*******

Группа:
Технический Маньяк
Сообщений: 1845
Регистрация: 9.10.2011
Из: Москва, Дмитровское ш.
Вне форума


Репутация:   71  


Урок #4 Мат. и Стринги



Как все уже поняли, речь пойдет о математике и строках(String).

1. Открываем наш созданный скрипт (как и где, смотрим прев. уроки)

2. Видим примерно следущее.
Код
MsgBox(0,"Мой первый скрипт","Я это сделал...!!!",10)

В кавычках как я и говарил мы указываем строковые значения (String)


3. Переменная начинается с знака $
Пример $sNAME
что надо помнить!
    - тип данных переменной пофиг (то есть неважно строка это или число, нужно самому главное помнить)
    - большие или маленькие буквы в имени переменной - пофиг
    - Для того что бы не путать самим, имя мы начинаем с буквы - s (String/ Строка), число будим обозначать i (Integer/ целое число)
    - переменную можно заранее не объявлять, просто пишим
    Код
    $iY=19

    но правельно это сперва в начале кода писать Dim
    Код
    Dim $iY

    $iY=19

    Но можно принебречь, пока.


4. простые действия с цыфрами и строками.


Вариант 1
Код
; Строки
$sA="Мой" & "первый"
$sB = "скрипт"
MsgBox(0,$sA & $sB,"Я это сделал...!!!",10)

В первом варианте мы объединяем строки с помощью символа &


Вариант 2
Код
; Строки
$sA="Мой" & " первый "
$sA &= "скрипт"
MsgBox(0,$sA,"Я это сделал...!!!",10)


Во втором мы используем присвоение &=
То есть к тому что было в переменной $sA, добавляем новое значение

Вариант 3

Код
$sA="Мой" & " первый "
$sA &= "скрипт"
MsgBox(0,$sA,"Я это сделал...!!!",1+9)


В третьем варианте, мы испольуем сложение для числовых значений.

Вариант 4
Код
; Строки
$sA="Мой" & " первый "
$sA &= "скрипт"

$iZ=1
$iZ+=32
MsgBox($iZ,$sA,"Я это сделал...!!!",1+9)


В варианте четыри, мы используем переменную для работой с числом
+= - присвоение, к тому что есть плюсуем еще.

Как незя делать!

Код
; Строки

$sA &= "скрипт"

$iZ+=32
MsgBox($iZ,$sA,"Я это сделал...!!!",1+9)

Будит две ошибки, так как нельзя присвоить или добавить к тому, для кого исходное значение не определено.
То есть $sA и $sZ переменная не определена и не имеет значения, а мы пытаемся к ним прибавлять и присваивать.

ДЗ

1. Открываем Азбуку
2. Первая вкладка Содержание
3. Основные понятия / Операторы
Прикрепленное изображение

4. Основные понятия / Типы данных

Учить на изусть!


____________ Задачи!____________________


Нарисуем окно с текстом, что бы получилось так!
Прикрепленное изображение







--------------------
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
andr_mozg
сообщение 12.12.2013, 19:25
Сообщение #6


7*#2&$%@
*******

Группа:
Технический Маньяк
Сообщений: 1845
Регистрация: 9.10.2011
Из: Москва, Дмитровское ш.
Вне форума


Репутация:   71  


Урок #5 компилим



1. Сперва рассмотрим еще одну команду для выдачи текста на экран
Код
ConsoleWrite ( "data" )

Не будим углублятся в терминалогию, кароче это вывод как бэ в косоль CMD

2. В нашем срипте пишем две строки

Код
MsgBox(0,"Мой первый скрипт","1.раз"&@CR&"2.раз раз"&@CR&"3.раз раз раз")

ConsoleWrite("тута я"&@CRLF)


3. Запускаем на исполнение F5
видим примерно следующее
Прикрепленное изображение


Окно вылезло, а где надпись?

Скрипт выполняется последовательно, как бэ язык не многозадачный, но при желании можно smile.gif
То есть пока мы не закроем окно, скрипт как бы в паузе, нажимаем в окне ОК

4. Окно закрылось, скрипт выполнился.
что видим?
Прикрепленное изображение


для плохо видящих, обвел!
вот наша надпись, мы передали ее в поток.


5. Все конечно интересно, но пора по взрослому.Компилируем
- сохранили скрипт и закрыли компилиятор (быстрое сохранение как всегда Ctrl+S)
- правой кнопкой тыкаем на нашь файл скрипта и видим меню
Прикрепленное изображение

p.s. Если винда 64х разрядная, то скарее всего эти пункты находятся в подменю, и сперва выбираем X64 ->

- Выбираем пункт Compile with Options перевод (Компиляция с опциональными)
что видим
Прикрепленное изображение

пока нас интересует перывая вкладка.
первый пункт - это версия нашего скрипта, выберем чек бокс Бэта.
второй пункт - это указания пути до иконки в формате .ICO
третий пункт - для какой OS компилируем х86 или x64 (оставляем поумолчанию x86)
четвертый пункт - с отображением окна консоли или без.


6. Качаем иконки, и распаковываем в папуку со скриптом
Прикрепленный файл  Others.zip ( 1,13 мегабайт ) Кол-во скачиваний: 291


7. Сново запускаем наш скрипт на компиляцию с параметрами.
в поле с иконками, справа, тыкаем на кнопку и выбираем иконку.
все остальное по умолчанию.

- и нажимаем снизу слева кнопку, Компил скрипт
- появляется небольшое окошка, после того как доходит до 100% все вобщем готово (на быстрых ПК можно не заметить smile.gif)) )
- рядом с нашим скриптом появится исполняемый файл с тем же именем но с расширением .exe (вот мы и скомпилировали)
- при запуске Script_1.exe мы увидим наше окно, но не увидим надписи "тута я", исправляем....

8. Открываем снова наш скрипт, и меняем строки местами.
получаем
Код
ConsoleWrite("тута я"&@CRLF)

MsgBox(0,"Мой первый скрипт","1.раз"&@CR&"2.раз раз"&@CR&"3.раз раз раз")


9. Сохранили и снова заходим в компилятор с опциями.

- как видим путь до нашей иконки сохранен и теперь нам ненадо сново ее выбирать (в скрипте сверху все прописано само)
- все оставляем так же, но 4ртый пункт о котором говарил ранее - выбираем.
- компилируем и запускаем

видим примерно следующее
Прикрепленное изображение


как видно появилось черное окно, в нем наша надпись, что мы передаем в поток но кодировка у меня кривая.
пока скрипт работает оно не закроется.

Если мы не поменяли строки местами в скрипте, то появилось бы окно MSBox, в окне будит пусто, потом мы тыкаем OK следущая наша команда
в поток отпраялет текст и скрипт сразу завершится, то есть мы нечего неуспеем увидить.

P.S. Кирилица в консоли может не отображаться по многим причинам, так что пользуем латиницу. Если у вас на компе отображает нормально, то это не значит что на другом все будит ОК.


P.S2 При работе скрипта, в треи (рядом с часами панелька, где значки маленькие) будит значек скрипта, необходимо его убрать.

Для этого первой строкой в скрипте будим всегда писать #NoTrayIcon


-------------------------- ДЗ-------------------------------------

- Открываем Азбуку
- Вторая вкладка Указатели (типа поиск)
- находим и изучаем

ConsoleWrite
Sleep

- на первой вкладке Содержание
находим раздел - Указатель макро, там 4 подраздела - изучаем все, пробуем пользовать.



------------ ЗАДАЧА

изобразить так же!
Прикрепленное изображение

номер версии и год это не текст, а системные переменные!!!










--------------------
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
andr_mozg
сообщение 22.12.2013, 20:55
Сообщение #7


7*#2&$%@
*******

Группа:
Технический Маньяк
Сообщений: 1845
Регистрация: 9.10.2011
Из: Москва, Дмитровское ш.
Вне форума


Репутация:   71  


Урок #6 Условное вырожение ( IF )



Пора акунуцо в мир логики, и изучить особую - уличную магию smile.gif))))

Рассмотрим самый простой вариант условия.

1. Проще некуда.

Код
$iA=1

if $iA>0 then ConsoleWrite ("Условие выполяется"&@CRLF)

ConsoleWrite ("Конец"&@CRLF)




Если условие выполняется то следует выполение команды после then ОДНОЙ КОМАНДЫ!
Если условие не выполяется то переходим сразу далее и выполяем ConsoleWrite ("Конец"&@CRLF)


2. А если надо запихнуть много команд???!!!

Код
$iA=1

if $iA>0 then
    ConsoleWrite ("Условие выполяется "&@CRLF)
    ConsoleWrite ("Условие выполяется "&@CRLF)
EndIf


ConsoleWrite ("Конец"&@CRLF)


Что поменялось?
- мы переносим команду которая выполняется если условие верно, на новую строку и добавляем еще одну.
- условие обязательно заканчивается EndIf
- все команды которые находятся между then и EndIf начинаются с TABа !


3. Вариант посложнее.

Код
$iA=1

if $iA>0 and $iA<>1 then

    ConsoleWrite ("Условие выполяется "&@CRLF)
    ConsoleWrite ("Условие выполяется "&@CRLF)
Else
    ConsoleWrite ("Условие НЕ выполяется "&@CRLF)
EndIf


ConsoleWrite ("Конец"&@CRLF)


Что тут?

- добавился Else
- теперь, если условие выполнено, то выполняется все команды между then и Else
- если условие не выполяется то выполняются команды между Else и EndIf
- условие усложнилось и теперь состоит из двух частей, а оператор and говарит нам о том что должно выполнятся первое условие И второе!


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



-------------------------- ДЗ-------------------------------------

- Открываем Азбуку
- на первой вкладке Содержание
находим раздел - Указатель ключивых слов и выражений
изучаем
- If...Then
- If...ElseIf...Else...EndIf

---------------------Задача--------------------------------

Таджик Ахмэд (по нашему Леха), кладет кладку кирпича. Остается небольшой зазор шириной A1 и длинной B1
Отрубает от кирпича кусок ширинной A2 и длинной B2 (все значения задаем переменными!)
Вопрос, не будит ли кусок отколотого кирпича больше, зазора ?

Нужно написать програмку где будут указанны переменные и заданы значение и условие, которое если выполняется будит писать - насяльника падходима усё.
а если кусок кирпича больше то - насяльника непадходима....

незабываем что значение ширины и длинны не может быть <= 0! (меньше или равно 0 )







--------------------
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post

Fast ReplyReply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Быстрый заказ, позвонить +7-978-708-85-73
Дроссель Amadeus Productions. Быстрый заказ по телефону.
(Viber, WhatsApp, Telegram)
Amadeus Productions Дроссельный узел на Lancer IX 1.6 (4G18), 2.0 (4G63) и другие моторы
Ремкомплект РХХ на Mitsubishi Lancer IX, 1.6 (4G18), MD619857, 1450A116
Облегченный маховик на 1.6 (4G18) и другие моторы
Облегченные шкивы на 1.6 (4G18) и другие моторы
One-touch или "Ленивые поворотники"