Чтение онлайн

на главную

Жанры

Справочник Жаркова по проектированию и программированию искусственного интеллекта. Том 9: Программирование на Visual C# искусственного интеллекта. Издание 3
Шрифт:

Аналогично, как первую, проектируем данную форму Form2 (рис. 3.3).

По этой схеме можно добавлять и большее количество форм, сколько необходимо для каждого конкретного приложения.

Рис. 3.1. Первая форма в режиме проектирования.

Рис. 3.2.

В панели Add New Item оставляем все по умолчанию и щёлкаем Add.

Рис. 3.3. Form2 после проектирования. Рис. 3.4. Панель Solution Explorer.

3.3. Код программы

Дважды щёлкаем кнопку на Form1 в режиме проектирования. Появившийся шаблон (после записи нашего кода) принимает вид следующего метода.

Листинг 3.1. Метод Button1_Click с нашим кодом для первой формы.

Текст программы смотрите в предыдущем Издании книги.

Напомним, что в Visual C#, в отличие от Visual Basic, имена переменных чувствительны к регистру букв. Метод Show показывает немодальную форму, а модальную форму выводит метод ShowDialog.

Дважды щёлкаем кнопку на Form2. Перед появившимся шаблоном объявляем две открытые глобальные переменные C и D, а внутри этого шаблона записываем наш код, после чего шаблон принимает вид следующего метода.

Листинг 3.2. Строка и метод Button1_Click с нашим кодом для Form2.

Текст программы опубликован в предыдущем Издании книги.

Таких локальных переменных, как A и B, и, соответственно, глобальных переменных C и D, в общем случае, мы записываем попарно столько, сколько на первой форме имеется окон TextBox, из которых мы будем передавать значения на другую форму. Переменные F, G можно не вводить (мы их ввели для наглядности) и заменить их на C, D. Отметим, что мы разработали несколько вариантов кода для передачи данных с одной формы на другую, но в этой книге приводим только один вариант (листинги 3.1 и 3.2), как наиболее простой.

Более подробно эти программы объяснены в наших книгах с сайта ZharkovPress.ru.

3.4. Методика разработки анимации в виде бегущей строки

На основании разработанной в предыдущей главе методики создания анимационного заголовка формы в данной главе мы разработаем методику создания бегущей строки любого текста, как в заголовке формы, так и внутри какого-либо элемента управления. Эту методику опишем на примерах двух вариантов подвижного заголовка, а именно:

бегущий

слева – направо заголовок;

бегущий справа – налево заголовок следующей формы.

Алгоритм бегущего слева – направо заголовка первой формы формулируем так:

начиная с первой буквы, поэтапно появляются буквы заголовка (по одной букве) с заданным нами в панели Properties интервалом времени Interval;

после появления всех букв заголовка он исчезает, и цикл поэтапного (побуквенного) вывода заголовка повторяется.

Для программной реализации этого алгоритма дважды щёлкаем значок timer1 ниже первой формы в режиме проектирования. Появляется файл Form1.cs с шаблоном метода timer1_Tick для обработки события Tick, периодически (с заданным интервалом) возбуждаемого объектом (таймером) timer1. Перед шаблоном объявляем глобальную переменную, а внутри этого шаблона записываем наш код, как показано на следующем листинге.

Листинг 3.3. Код для бегущего слева – направо заголовка.

Текст программы опубликован в предыдущем Издании книги.

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

Алгоритм бегущего справа – налево заголовка следующей формы формулируем иначе (чем предыдущий):

появляются все буквы заголовка;

начиная с последней буквы, поэтапно исчезают буквы заголовка (по одной букве) с заданным нами в панели Properties интервалом времени Interval;

после исчезновения последней буквы заголовка снова появляются все буквы заголовка и цикл поэтапного (побуквенного) удаления заголовка повторяется.

Дважды щёлкаем значок timer1 ниже второй формы в режиме проектирования.

Появляется файл Form2.cs с шаблоном; перед этим шаблоном объявляем глобальную переменную, а внутри шаблона записываем наш код, как показано на следующем листинге.

Листинг 3.4. Код для бегущего справа – налево заголовка.

Текст программы опубликован в предыдущем Издании книги.

Аналогично можно запрограммировать бегущую строку внутри какого-либо элемента управления (или нескольких элементов управления), если на листингах 3.3 и 3.4 в строке

this.Text = myString.Substring(0, i);

после ключевого слова this мы допишем имя этого элемента управления (свойство Name), например, (button1.) для кнопки.

3.5. Выполнение расчётов

Проверяем в действии созданное нами приложение (проект) в виде программы-калькулятора, например, для вычисления произведения двух чисел:

1. Запускаем программу: Build, Build Selection; Debug, Start Without Debugging.

В ответ Visual C# выполняет программу и на рабочий стол выводит первую форму с пустыми окнами и мигающим курсором в первом окне (рис. 3.5). Мы видим также бегущий слева – направо заголовок формы.

2. В первое окно вводим первый сомножитель.

3. Щёлкаем во втором окне, вводим второй сомножитель и щёлкаем кнопку “=”.

Появляется вторая форма (рис. 3.6) с нулями во всех трёх окнах. Мы видим также бегущий справа – налево заголовок формы.

Поделиться:
Популярные книги

Бастард Императора

Орлов Андрей Юрьевич
1. Бастард Императора
Фантастика:
фэнтези
аниме
5.00
рейтинг книги
Бастард Императора

На границе империй. Том 10. Часть 1

INDIGO
Вселенная EVE Online
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 10. Часть 1

Имя нам Легион. Том 7

Дорничев Дмитрий
7. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Имя нам Легион. Том 7

Измена. Вторая жена мужа

Караева Алсу
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Измена. Вторая жена мужа

Буря империи

Сай Ярослав
6. Медорфенов
Фантастика:
аниме
фэнтези
фантастика: прочее
эпическая фантастика
5.00
рейтинг книги
Буря империи

Пенсия для морского дьявола

Чиркунов Игорь
1. Первый в касте бездны
Фантастика:
попаданцы
5.29
рейтинг книги
Пенсия для морского дьявола

На изломе чувств

Юнина Наталья
Любовные романы:
современные любовные романы
6.83
рейтинг книги
На изломе чувств

Тринадцатый II

NikL
2. Видящий смерть
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Тринадцатый II

Сирота

Шмаков Алексей Семенович
1. Светлая Тьма
Фантастика:
юмористическое фэнтези
городское фэнтези
аниме
5.00
рейтинг книги
Сирота

Законы Рода. Том 9

Flow Ascold
9. Граф Берестьев
Фантастика:
городское фэнтези
попаданцы
аниме
дорама
фэнтези
фантастика: прочее
5.00
рейтинг книги
Законы Рода. Том 9

Красноармеец

Поселягин Владимир Геннадьевич
1. Красноармеец
Фантастика:
боевая фантастика
попаданцы
4.60
рейтинг книги
Красноармеец

Огненный князь 4

Машуков Тимур
4. Багряный восход
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Огненный князь 4

Начальник милиции. Книга 5

Дамиров Рафаэль
5. Начальник милиции
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Начальник милиции. Книга 5

Инкарнатор

Прокофьев Роман Юрьевич
1. Стеллар
Фантастика:
боевая фантастика
рпг
7.30
рейтинг книги
Инкарнатор