История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...

Глава 2. Методика разработки приложений для выполнения расчетов с эффектами анимации

2017-05-23 284
Глава 2. Методика разработки приложений для выполнения расчетов с эффектами анимации 0.00 из 5.00 0 оценок
Заказать работу

Вверх
Содержание
Поиск

 

Листинг 2.1. Наш основной код с тремя переменными.

 

double a, b, c;

a = Convert.ToDouble(textBox1.Text);

b = Convert.ToDouble(textBox2.Text);

c = a + b;

textBox3.Text = c.ToString();

 

Второй вариант – с двумя переменными:

double a, b;

a = Convert.ToDouble(textBox1.Text);

b = Convert.ToDouble(textBox2.Text);

textBox3.Text = (a + b).ToString();

Третий вариант – с одной переменной:

double a;

a = Convert.ToDouble(textBox1.Text);

textBox3.Text = (a +

Convert.ToDouble(textBox2.Text)).ToString();

Четвертый вариант – без использования переменных:

textBox3.Text = (Convert.ToDouble(textBox1.Text) +

Convert.ToDouble(textBox2.Text)).ToString();

 

Листинг 2.2. Метод для включения таймера и задания интервала времени.

 

private void InitializeTimer()

{

//Включаем таймер:

timer1.Enabled = true;

//Генерируем событие Tick через каждый интервал времени,

//равный значению свойства Interval:

timer1.Interval = 500;

}

Листинг 2.3. Код для создания анимации. Вариант 1.

 

//Объявляем булеву переменную myText и присваиваем ей false:

bool myText = false;

private void timer1_Tick(object sender, EventArgs e)

{

//Задаем чередование "Калькулятор(Calculator)" и

//"Калькулятор с анимацией (Calculator with animation)":

if (myText == false)

{

this.Text = "Калькулятор(Calculator)";

//Изменяем значение myText на противоположное:

myText = true;

}

else

{

this.Text = "Калькулятор с анимацией " +

"(Calculator with animation)";

//Изменяем значение myText на противоположное:

myText = false;

}

}

Листинг 2.4. Код для создания анимации. Вариант 2.

 

//Объявляем счетчик (counter) числа интервалов

//и задаем его начальное значение:

private int counter = 0;

//Объявляем и задаем число интервалов N_Interval,

//после которого один текст сменяется другим:

private int N_Interval = 3;

private void timer1_Tick(object sender, EventArgs e)

{

//Проверяем, значение счетчика counter

//равно или еще нет числу интервалов N_Interval,

//после которого один текст сменяется другим:

if (counter >= N_Interval)

{

//Если значение счетчика накопилось и равно

//N_Interval, то выводим другой текст:

this.Text = "Калькулятор(Calculator)";

//Значение счетчика counter снова обнуляем:

counter = 0;

}

else

{

//Если значение счетчика еще не накопилось

//и не равно N_Interval,

//то выводим первый текст:

this.Text = "Калькулятор с анимацией " +

"(Calculator with animation)";

//Значение счетчика увеличиваем на 1:

counter = counter + 1;

}

}

Листинг 2.5. Код для создания анимации. Вариант 3.

 

//Объявляем счетчик (counter) числа интервалов

//и задаем его начальное значение:

private int counter = 0;

//Объявляем и задаем число интервалов N_Interval,

//после которого один текст сменяется другим:

private int N_Interval = 3;

//Объявляем и обнуляем счетчик i_Interval_Stop,

//который считает число интервалов

//до остановки анимации:

private int i_Interval_Stop = 0;

//Объявляем и задаем число интервалов N_Interval_Stop,

//по достижении которого анимация прекращается:

private int N_Interval_Stop = 10;

private void timer1_Tick(object sender, EventArgs e)

{

//Значение счетчика i_Interval_Stop,

//который считает число интервалов

//до остановки анимации, увеличиваем на 1:

i_Interval_Stop = i_Interval_Stop + 1;

//Проверяем число интервалов i_Interval_Stop,

//по достижении которого анимация прекращается:

if (i_Interval_Stop >= N_Interval_Stop)

timer1.Enabled = false;

//Проверяем, значение счетчика counter

//равно или еще нет числу интервалов N_Interval,

//после которого один текст сменяется другим:

if (counter >= N_Interval)

{

//Если значение счетчика накопилось и равно

//N_Interval, то выводим другой текст:

this.Text = "Калькулятор (Calculator)";

//Значение счетчика counter снова обнуляем:

counter = 0;

}

else

{

//Если значение счетчика еще не накопилось

//и не равно N_Interval,

//то выводим первый текст:

this.Text = "Калькулятор с анимацией " +

"(Calculator with animation)";

//Значение счетчика увеличиваем на 1:

counter = counter + 1;

}

}

 

Листинг 2.6. Строка кода, останавливающая анимацию.

 

timer1.Enabled = false;

 

Недостаток записи только этой одной строки кода заключается в том, что после остановки анимации мы не сможем запустить ее вновь.

Чтобы возобновить анимацию, мы должны в обработчик события записать другую строку кода:

 

Листинг 2.7. Строка кода, возобновляющая анимацию.

 

timer1.Enabled = true;

 

Листинг 2.8. Код для приостановки и возобновления анимации.

 

//Объявляем булеву переменную OffOn и задаем ей false:

bool OffOn = false;

private void button2_Click(object sender, EventArgs e)

{

//Задаем чередование остановки и возобновления анимации

//после каждого щелчка кнопки button2:

if (OffOn == false)

{

//Останавливаем анимацию:

timer1.Enabled = false;

 

//Изменяем значение OffOn на противоположное:

OffOn = true;

}

else

{

//Возобновляем анимацию:

timer1.Enabled = true;

 

//Изменяем значение OffOn на противоположное:

OffOn = false;

}

}

Далее в шаблоне метода организовываем цикл по переменной i:

 

i = i + 1;

if (i <= N_Beep)

Microsoft.VisualBasic.Interaction.Beep();

 

 


 


Поделиться с друзьями:

Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...

Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...

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



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.013 с.