Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Задание №3. Создание программ с использованием компонента Timer





Цель занятия: Научиться работать с датой и временем

Студенты должны
знать: свойства и методы компонента Timer

уметь: создавать приложения с использованием компонента Timer

Задание.

1. Выберите в меню Пуск – Программы - CodeGear RAD Studio 2009 - C++Builder 2009

2. Создание новое приложение (FileNewVCL Forms Application).

3. Создайте приложение «Угадай число»

a. Проектирование интерфейса приложения

b. Программирование приложения

а). Определение свойств добавленных компонент в программе:

const TR=10; //время для решения задачи

int pw; //загаданное число

int rem=TR; //остаток времени

__fastcall TForm1:: TForm1(TComponent* Owner)

: TForm(Owner)

{

Label2-> Caption = IntToStr(TR);

ProgressBar1-> Max=TR; //настройка индикатора, начальное значение равно максимальному

ProgressBar1-> Position=TR;

ProgressBar1-> Step=1; // шаг изменения

ProgressBar1-> Smooth = true; // индикатор - полоса

Randomize(); // генератор случайных чисел

pw=Random(9); // загаданное число

}

б). Напишите процедуру на событие onTimer

void __fastcall TForm1:: Timer1Timer(TObject *Sender)

{

Rem--;

ProgressBar1-> Position--;

Label2-> Caption = IntToStr (rem);

if (rem==0) {

Timer1-> Enabled=false;

Edit1-> Enabled=false;

Button1-> Enabled=false;

ShowMessage(" Вы не справились. \n Загаданное число " +IntToStr (pw));

} }

в). Щелчок по переключателю Полоса

void __fastcall TForm1:: CheckBox1Click(TObject *Sender)

{

if (CheckBox1-> Checked)

{

ProgressBar1-> Step=1;

ProgressBar1-> Smooth = true;

}

Else

{

ProgressBar1-> Step=6;

ProgressBar1-> Smooth = false;

}

}

г). Нажатие кнопки ОК

void __fastcall TForm1:: Button1Click(TObject *Sender)

{

if (StrToInt(Edit1-> Text)==pw) {

Timer1-> Enabled=false;

Edit1-> Enabled=false;

Button1-> Enabled=false;

ShowMessage(" Вы справились. \n Вы угадали число за " +IntToStr (TR-rem)+" секунд");

}

}

д). Самостоятельно напишите процедуру для нажатия клавиши в поле редактирования окна ввода – событие onKeyPress. При написании программы учтите возможность нажатия только клавиш от 0 до 9, клавиши удаления символа и клавиши ввода.

е). Самостоятельно напишите процедуру на событие onChange компонента Edit1. В данной процедуре учтите, что кнопка ОК должна быть активна только в случае, если длина строки в окне ввода равна 1 символу.

c. Создайте справочное руководство в формате html и напишите команду для открытия справки:

void __fastcall TForm1:: Button2Click(TObject *Sender)

{

ShellExecute(Form1-> Handle, " open", " help.html", NULL, NULL, SW_RESTORE);

}

d. Добавьте справку о программе в отдельном окне (форме).

 

4. Задание для самостоятельного выполнения:

 

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

2 вариант. Напишите программу для движения надписи слева направо " Я буду сдавать экзамен по программированию" с использованием компонента Timer.

3 вариант. Напишите программу для движения надписи справа налево " Я буду сдавать экзамен по программированию" с использованием компонента Timer.

4 вариант. Напишите программу для движения надписи сверху вниз " Я буду сдавать экзамен по программированию" с использованием компонента Timer.

5 вариант. Напишите программу для движения надписи снизу вверх " Я буду сдавать экзамен по программированию" с использованием компонента Timer.

6 вариант. Напишите программу для движения кнопки " Нажми меня" слева направо с использованием компонента Timer.

7 вариант. Напишите программу для движения кнопки " Нажми меня" справа налево с использованием компонента Timer.

8 вариант. Напишите программу для движения кнопки " Нажми меня" по главной диагонали экрана с использованием компонента Timer.

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

10 вариант. Напишите программу для движения кнопки " Нажми меня" по периметру экрана с использованием компонента Timer.

11 вариант. Напишите программу для движения кнопки " Нажми меня" по нарисованному лабиринту с использованием компонента Timer.

12 вариант. Напишите программу, демонстрирующую работу программы Секундомер

 







Дата добавления: 2014-11-10; просмотров: 779. Нарушение авторских прав; Мы поможем в написании вашей работы!




Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...


Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...


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


Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Классификация ИС по признаку структурированности задач Так как основное назначение ИС – автоматизировать информационные процессы для решения определенных задач, то одна из основных классификаций – это классификация ИС по степени структурированности задач...

Внешняя политика России 1894- 1917 гг. Внешнюю политику Николая II и первый период его царствования определяли, по меньшей мере три важных фактора...

Оценка качества Анализ документации. Имеющийся рецепт, паспорт письменного контроля и номер лекарственной формы соответствуют друг другу. Ингредиенты совместимы, расчеты сделаны верно, паспорт письменного контроля выписан верно. Правильность упаковки и оформления....

СИНТАКСИЧЕСКАЯ РАБОТА В СИСТЕМЕ РАЗВИТИЯ РЕЧИ УЧАЩИХСЯ В языке различаются уровни — уровень слова (лексический), уровень словосочетания и предложения (синтаксический) и уровень Словосочетание в этом смысле может рассматриваться как переходное звено от лексического уровня к синтаксическому...

Плейотропное действие генов. Примеры. Плейотропное действие генов - это зависимость нескольких признаков от одного гена, то есть множественное действие одного гена...

Методика обучения письму и письменной речи на иностранном языке в средней школе. Различают письмо и письменную речь. Письмо – объект овладения графической и орфографической системами иностранного языка для фиксации языкового и речевого материала...

Studopedia.info - Студопедия - 2014-2025 год . (0.009 сек.) русская версия | украинская версия