MaterStudiorum.ru - домашняя страничка студента.
Минимум рекламы - максимум информации.


Авиация и космонавтика
Административное право
Арбитражный процесс
Архитектура
Астрология
Астрономия
Банковское дело
Безопасность жизнедеятельности
Биографии
Биология
Биология и химия
Биржевое дело
Ботаника и сельское хоз-во
Бухгалтерский учет и аудит
Валютные отношения
Ветеринария
Военная кафедра
География
Геодезия
Геология
Геополитика
Государство и право
Гражданское право и процесс
Делопроизводство
Деньги и кредит
Естествознание
Журналистика
Зоология
Издательское дело и полиграфия
Инвестиции
Иностранный язык
Информатика
Информатика, программирование
Исторические личности
История
История техники
Кибернетика
Коммуникации и связь
Компьютерные науки
Косметология
Краткое содержание произведений
Криминалистика
Криминология
Криптология
Кулинария
Культура и искусство
Культурология
Литература и русский язык
Литература(зарубежная)
Логика
Логистика
Маркетинг
Математика
Медицина, здоровье
Медицинские науки
Международное публичное право
Международное частное право
Международные отношения
Менеджмент
Металлургия
Москвоведение
Музыка
Муниципальное право
Налоги, налогообложение
Наука и техника
Начертательная геометрия
Новейшая история, политология
Оккультизм и уфология
Остальные рефераты
Педагогика
Полиграфия
Политология
Право
Право, юриспруденция
Предпринимательство
Промышленность, производство
Психология
Психология, педагогика
Радиоэлектроника
Разное
Реклама
Религия и мифология
Риторика
Сексология
Социология
Статистика
Страхование
Строительные науки
Строительство
Схемотехника
Таможенная система
Теория государства и права
Теория организации
Теплотехника
Технология
Товароведение
Транспорт
Трудовое право
Туризм
Уголовное право и процесс
Управление
Управленческие науки
Физика
Физкультура и спорт
Философия
Финансовые науки
Финансы
Фотография
Химия
Хозяйственное право
Цифровые устройства
Экологическое право
Экология
Экономика
Экономико-математическое моделирование
Экономическая география
Экономическая теория
Эргономика
Этика
Юриспруденция
Языковедение
Языкознание, филология
    Начало -> Информатика, программирование -> Работа с регионами в Visual C++

Название:Работа с регионами в Visual C++
Просмотров:68
Раздел:Информатика, программирование
Ссылка:Скачать(211 KB)
Описание:В Win32 API есть набор функций для работы с регионами. При помощи регионов Вы можете создавать различные поверхности, используя только стандартные геометрические фигуры. Ну а дальше всё зависит от Вашей выдумки.

Часть полного текста документа:

Работа с регионами в Visual C++ Vander Nunes
    В Win32 API есть набор функций для работы с регионами. При помощи регионов Вы можете создавать различные поверхности, используя только стандартные геометрические фигуры. Ну а дальше всё зависит от Вашей выдумки.
    Итак, приступим к определениям:
    HRNG:
    Это всего лишь тип данных, означающий "хэндл региона". Такой хэндл потребуется для каждого региона, с которым Вы захотите работать.
    Пример использования:
    HRGN hRegion = CreateRectRgn(x,y,x+128,y+128);
    После завершения работы с регионом, необходимо удалить объект, связанный с регионом при помощи функции DeleteObject().
    CombineRgn, CreateEllipticRgn, CreateEllipticRgnIndirect, CreatePolygonRgn, CreatePolyPolygonRgn, CreateRectRgn, CreateRectRgnIndirect, CreateRoundRectRgn, EqualRgn, ExtCreateRegion, FillRgn, FrameRgn, GetPolyFillMode, GetRegionData, GetRgnBox, InvertRgn, OffsetRgn, PaintRgn, PtInRegion, RectInRegion, SetPolyFillMode.
    Это основные функции, которые предназначены для создания и работы с регионами. Как видно из названий, регионы можно создавать круглые, квадратные, а также любой другой формы.
    SetWindowRgn
    При помощи этой функции можно прикрепить регион к любому окну. Например, после использования этой функции, окно может выглядеть следующим образом:
    
    Чтобы проделать такое с окном, понадобятся следующие функции:
    // эта функция создаёт круглый регион.
    HRGN CreateEllipticRgn (
    int nLeftRect, // x-координата верхнего-левого угла
    int nTopRect, // y-координата верхнего-левого угла
    int nRightRect, // x-координата нижнего-правого угла
    int nBottomRect // y-координата нижнего-правого угла
    );
    
    // эта функция совмещает два региона
    int CombineRgn (
    HRGN hrgnDest, // хэндл конечного региона
    HRGN hrgnSrc1, // хэндл исходного региона
    HRGN hrgnSrc2, // хэндл исходного региона
    int fnCombineMode // режим совмещения регионов
    );
    // эта функция прикрепляет регион к окну.
    // чтобы убрать регион с окна, надо вместо хэндла региона поставить NULL.
    int SetWindowRgn (
    HWND hWnd, // хэндл окна, на которое будет установлен регион
    HRGN hRgn, // хэндл региона
    BOOL bRedraw // флаг перерисовки окна
    );
    Ну а теперь взглянем на реальный код, который демонстрирует создание окна, изображение которого приведено выше:
    // --------------------------------------------------
    // Создаём круглый регион.
    // Используем отрицательную начальную координату, чтобы наш элипс
    // захватил заголовок окна.
    // --------------------------------------------------
    HRGN hRegion1 = CreateEllipticRgn(20,-20,190,150);
    // --------------------------------------------------
    // создаём ещё один круглый регион в другом месте.
    // --------------------------------------------------
    HRGN hRegion2 = CreateEllipticRgn(140,100,300,240);
    // --------------------------------------------------
    // склеиваем два региона, чтобы сделать новый регион.
    // итоговый регион будет помещён в region1,
    // подобно операции:
    //
    // hRegion1 = hRegion1 + hRegion2.
    //
    // в функции CombineRgn() можно использовать набор операций RGN_.
    // --------------------------------------------------
    CombineRgn(hRegion1, hRegion1, hRegion2, RGN_OR);
    // --------------------------------------------------
    // прикрепляем регион к окну
    // --------------------------------------------------
    SetWindowRgn(hWnd, hRegion1, true);
    // --------------------------------------------------
    // удаляем объекты регионов
    // --------------------------------------------------
    DeleteObject(hRegion1);
    DeleteObject(hRegion2);
    Чтобы вернуть окно в нормальное состояние (без региона), воспользуйтесь следующей функцией:
    SetWindowRgn(hWnd, NULL, true);
    Скачать пример - 13Кб
    СКИНЫ
    Тема скинов довольно популярна в программировании. ............




Нет комментариев.



Оставить комментарий:

Ваше Имя:
Email:
Антибот:  
Ваш комментарий:  



Похожие работы:

Название:Состояние и тенденции демографических показателей и их региональные особенности
Просмотров:137
Описание: Содержание Введение Оценка основных демографических показателей в стране Анализ демографического развития в разрезе регионов Анализ основных показателей уровня жизни населения Социально-экономическ

Название:Проблемы реализации региональной жилищной политики (на примере Администрации города Серпухова)
Просмотров:137
Описание: Содержание Введение 1. Теоретические основы жилищной политики 1.1 Развитие жилищных отношений в России 1.2 Жилищная обеспеченность и жилищная политика в современной России 1.3 Проблемы реализации регионал

Название:Региональный компонент государственного образовательного стандарта по предмету "Физическая культура"
Просмотров:75
Описание: Федеральное агентство по образованию Государственное образовательное учреждение Высшего профессионального образования Поморский Государственный Университет имени М.В. ЛОМОНОСОВА Факультет физической

Название:Региональный рынок труда
Просмотров:90
Описание: КОНТРОЛЬНАЯ РАБОТА по дисциплине: «Экономика региона» на тему: «Региональный рынок труда»   СОДЕРЖАНИЕ ВВЕДЕНИЕ Глава 1. РЫНОК ТРУДА 1.1 Понятие рынка труда 1.2 Регуляторы рынка труда 1.3 Определ

Название:Региональная экология (Калининградская область)
Просмотров:261
Описание: Содержание Введение 1. Оценка природно-ресурсного потенциала Калининградской области 2. Административные методы решения экологических проблем 3. Экономические методы решения экологических проблем Закл

 
     

Вечно с вами © MaterStudiorum.ru