C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 Урок 10. Метод MoveBall / Lines / Примеры разработки

Игра Lines (Visual C++. MFC)
Урок 10. Метод MoveBall

Добавьте в класс CLinesDoc новый метод MoveBall. Для этого на вкладке ClassView щелкаете на имени класса правой кнопкой мыши, в контекстном меню выбираете Add Member Function, и появивщемся диалоге задаете параметры для нового метода:

Диалог Add Member Function

Для добавленного метода внесите следующий код:

void CLinesDoc::MoveBall(int xFrom, int yFrom, int xTo, int yTo){
    //обмен шарика и пустого места
    int iTmp;
    iTmp = m_field[xTo][yTo];
    SetField(xTo, yTo, m_field[xFrom][yFrom]);
    SetField(xFrom, yFrom, iTmp);
}

Запускаем программу. Ничего нового нет. Внесем теперь изменения в написанный ранее код. Перейдите в код метода OnNewDocument для класса CLinesDoc. Добавьте в конце его следующие строки:

BOOL CLinesDoc::OnNewDocument()
{
    ...
    Throw3Balls(5);//кидаем пять начальных шариков.
    CString s1;
    s1.Format("5 balls, 0 points");
    return TRUE;
}

И еще одно изменение. Раскомментируйте строку в методе OnLButtonUp класса CLinesView:

            ...
            //ставим временную заглушку,
            //т. е. считаем, что путь всегда существует.
            if(/*pDoc->IsPath(x0, y0, x, y)*/true){ 

                pDoc->MoveBall(x0, y0, x, y);
                bMove=false;
                ...

Запустите программу. Появились шарики, и их уже можно по полю двигать!