Новые книги

Эта книга рассказывает о самых популярных agile-подходах – Scrum, XP (экстремальное программирование), Lean (бережливое программирование) и Канбан. Она познакомит вас с методами, работающими в повседневной жизни, а также с базовыми ценностями и принципами, которые помогут вашей команде полностью изменить свой подход к работе над проектами. Вы начнете лучше разбираться в конкретных agile-подходах и сможете сразу внедрить их на практике. А главное, вы поймете, как превратить группу сотрудников, добавляющих в свою работу Agile, в настоящую команду, которая действительно улучшает способ создания продукта и добивается выдающихся результатов.

На русском языке публикуется впервые.
По статистике у каждого второго пользователя сети Интернет есть свой сайт или страница в соцсетях. И все владельцы таких сайтов делятся на две категории – тех, кто зарабатывает с помощью своего сайта, и тех, кто не зарабатывает или даже теряет свои деньги. Вы можете создать прекрасный сайт, можете им гордиться, можете рассказывать, что ваша компания существует на рынке уже двадцать лет… Но парадокс в том, что вы должны создать сайт не для себя, а для своих клиентов, иначе не сможете убедить посетителя сайта купить товар или услугу именно у вас.

Мы поможем вам создать продающий сайт – реального менеджера-продавца, круглосуточно продающего ваши товары и услуги, который привлечет бесплатных посетителей на ваш сайт и увеличит базу потенциальных клиентов, создаст продающий контент и автоматические воронки продаж, внедрит системы оплаты, приема и перевода платежей.

Несколько слов о заполнении объектов

Несколько слов о заполнении объектов

Как читатель уже знает, заполнение замкнутых графических объектов происходит с помощью текущей кисти. Программист может использовать предопределенную кисть, а может создать свою собственную, после чего сделать ее текущей с помощью функции SelectObject().

Простейшим видом кисти является так называемая сплошная кисть, которая создается с помощью функции CreateSolidBrush():

  WINGDIAPI HBRUSH  WINAPI CreateSolidBrush(COLORREF);
Единственный аргумент этой функции - цвет кисти (может, лучше сказать не кисти, а краски?).

Штриховая кисть создается с помощью функции CreateHatchBrush():

  WINGDIAPI HBRUSH  WINAPI CreateHatchBrush(int, COLORREF);
Первый аргумент этой функции - стиль штриховки. Возможные стили приведены в таблице.

Стили штриховки

Стиль штриховки Значение Описание Эффект
HS_HORIZONTAL 0 ---- Горизонтальная штриховка
HS_VERTICAL 1 ||||| Вертикальная штриховка
HS_FDIAGONAL 2 \\\\\ Наклонная слева направо штриховка
HS_BDIAGONAL 3 ///// Наклонная справа налево штриховка
HS_CROSS 4 +++++ Штриховка крестиком
HS_DIAGCROSS 5 xxxxx Штриховка косым крестиком

Второй аргумент указывает цвет штриховки.

И наконец, с помощью функции CreatePatternBrush() мы можем создать кисть, которая при заполнении будет использовать bitmap. В wingdi.h она описана следующим образом:

  WINGDIAPI HBRUSH WINAPI CreatePatternBrush(HBITMAP);
Уже по типу аргумента видно, что единственным аргументом этой функции является хэндл bitmap'а.

Эти три функции при успешном завершении возвращают хэндл созданной кисти. В том случае, если произошла какая-то ошибка, возвращаемое значение равно NULL.