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

Аналогично запрограммируйте соответствующие события для перетягивания двух других рисунков

Читайте также:
  1. II. О звериных и других промыслах
  2. VI. Учет других объектов арендодателем
  3. Административное принуждение и его отличие от других видов государственного принуждения система мер административного принуждения.
  4. Алиментные обязательства других членов семьи.
  5. Амнезии (нарушения памяти на события)
  6. АРТЕРИИ ЭЛАСТИЧЕСКОГО ТИПА ОТЛИЧАЮТСЯ ОТ ДРУГИХ ТИПОВ _________________ (1)
  7. Бойцы, судьбы которых были прояснены в результате кропотливой поисковой работы, и которые не увековечены в других книгах памяти.
  8. БУДУЩЕЕ – ВСЕ, КТО ВОВЛЕЧЕН В СФЕРУ ВАШИХ ИНТЕРЕСОВ, ИСПЫТЫВАЮТ СЕЙЧАС СИЛЬНОЕ ВОЗБУЖДЕНИЕ. СКОРО ВАМ ОТКРОЕТСЯ ДРУГАЯ СТОРОНА СОБЫТИЯ.
  9. В других деревнях; а затем было основан банк Grameen, выдавший
  10. В других странах Европы
  11. В России, как и в других странах, АМ действовала через благотворительность, используя гуманитарную помощь как отмычку к сердцам чиновников

11. Создайте функцию lmageInShape для проверки расположения
рисунка (объекта Image) в середине некоторой геометрической фигуры (объекта Shape).

bool lmageInShape(TImage* I,TShape* S)

{

if ((I -> Left> = S -> Left) &&

(I -> Left+ I -> Width <= S -> Left + S -> Width) &&

(I -> Top >= S -> Top) &&

(I -> Top + I -> Height <= S -> Top + S -> Height))
return true; // Рисунок в середине фигуры

Else

return false; // Рисунок вне фигуры

}

l2. Запрограммируйте кнопку "Готово", которая проверяет правильность расположения рисунков внутри фигур:

__ void__fastcall TForm1::BitBtn1Click(TObject *Sender)

{ // Если: первый рисунок во второй фигуре

if (ImageInShape(Image1, Shape2) &&

// второй рисунок в третьей фигуре lmageInShape(Image2, Shape3) &&

// третий рисунок в первой фигуре ImageInShape(Image3, Shape1))

Result(right);

Else

Result(wrong);

}

13. Запрограммируйте второй таймер, который обеспечивает индикацию времени выполнения от 100 до 0% со скоростью, обратно пропорциональной к числу в CSpinEdit1.

В случае, когда пользователь не успел расположить рисунки в
прямоугольниках и нажать на кнопку "Готово" в отведенное
время, подается звук "ДИНГ" и открывается информационное окно с сообщением "Попробуйте еще раз!".

 

void_fastcall TForm1::Timer2Timer(TObject *Sender)

{

// Задаем скорость движения индикатора:

Timer2 -> Interval = CSpinEdit1 -> Value * 50;

// Работает индикатор времени:

ProgressBar1 -> Position = ProgressBar1 -> Position - 1;

// Если время исчерпано "Попробуйте еще раз!"

if (ProgressBar1 -> Position = = 0)

Result(more);

}

Сохраните программу и проект в рабочей папке.

15. Скопируйте музыкальные файлы ding.wav и tada.wav в свою рабочую папку из папки C:\WINDOWS\MEDIA.

Запустите программу. Перетягивайте мышью рисунки в середину соответствующих фигур. Закончите работу.

Задания

 

1. Обеспечьте возможность перетягивания рисунков лишь левой клавишей мыши (см. п. 9).

2. Увеличьте вдвое частоту мигания текста "Обязательно нажмите на кнопку "Готово" после размещения рисунков!!!".

3. Замените в программе индикатор состояния типа ProgressBar на индикатор
типа Gauge.

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

5. Изымите объект SpinEdit1 и задайте самую удачную скорость движения индикатора времени непосредственно в проекте.

 

 


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.005 сек.)