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 руб./мес


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




 Урок 8. Пишем OnDraw - метод для рисования / Lines / Примеры разработки

Игра Lines (Visual C++. MFC)
Урок 8. Пишем OnDraw - метод для рисования

После подсоединения ресурсов займемся непосредственно рисованием. Для этого добавьте в метод OnDraw класса CLinesView следующийй код:

void CLinesView::OnDraw(CDC* pDC)
{
    CLinesDoc* pDoc = GetDocument();
    ASSERT_VALID(pDoc);
    // TODO: add draw code for native data here
    CBitmap bitmap;
    BITMAP bmp;
    for(int j=0; j<pDoc->m_iNumOfRows; j++){
        for(int i=0; i<pDoc->m_iNumOfRows; i++){
            bitmap.DeleteObject();
            switch(pDoc->m_field[i][j]){
            case 1:
                bitmap.LoadBitmap(IDB_BLACK);
                break;
            case 2:
                bitmap.LoadBitmap(IDB_BLUE);
                break;
            case 3:
                bitmap.LoadBitmap(IDB_BROWN);
                break;
            case 4:
                bitmap.LoadBitmap(IDB_GREEN);
                break;
            case 5:
                bitmap.LoadBitmap(IDB_RED);
                break;
            case 6:
                bitmap.LoadBitmap(IDB_ROSE);
                break;
            case 7:
                bitmap.LoadBitmap(IDB_YELLOW);
                break;
            default:
                bitmap.LoadBitmap(IDB_NO_COLOR);
                break;
            }
            bitmap.GetObject(sizeof(BITMAP), &bmp);
            
            pDC->DrawState(CPoint(24*i,24*j),
                CSize(bmp.bmWidth,bmp.bmHeight),bitmap, DST_BITMAP);
        }
    }
}

Запустите программу. Вы должны увидеть поле с пустыми полями:

Пустое поле

Наша программа понемногу оживает.