Visual C++. Описание стандартных классов - SelectObject

ОГЛАВЛЕНИЕ


SelectObject

CPen* SelectObject(CPen* pPen);
CBrush* SelectObject(CBrush* pBrush);
virtual CFont* SelectObject(CFont* pFont);
CBitmap* SelectObject(CBitmap* pBitmap);
int SelectObject(CRgn* pRgn);

Возвращаемое значение

Указатель на замещаемый объект одного из классов, производных от класса CGdiObject, например на объект класса CPen. Тип возвращаемого значения зависит от версии используемой функции. В случае возникновения ошибки возвращается нулевое значение. Эта функция может возвращать указатель на временный объект. Это означает, что указатель на данный объект можно использовать только в пределах функции обработки одного сообщения Windows. Более подробная информация содержится в описании функции CGdiObject::FromHandle. Версия функции, аргументом которой является указатель на объект класса CRgn, выполняет ту же функцию, что и функция SelectClipRgn. Ее возвращаемая величина может принимать следующие значения:
  • COMPLEXREGION - новая область отсечки имеет пересекающиеся границы;
    ERROR - ошибка при задании контекста устройства или недопустимая область отсечки;
    NULLREGION - новая область отсечки представляет собой пустую область;
    SIMPLEREGION - новая область отсечки не имеет пересекающихся границ.

Аргументы

  • pPen - указатель на объект класса CPen.
  • pBrush - указатель на объект класса CBrush.
  • pFont - указатель на объект класса CFont.
  • pBitmap - указатель на объект класса CBitmap.
  • pRgn - указатель на объект класса CRgn.

Описание

Выбирает объект класса в контекст устройства. Класс CDC содержит пять версий данной функции, отличающихся типом аргумента и возвращаемого значения. В качестве аргументов данной функции могут выступать объекты классов пера, кисти, шрифта, битового образа и области. Выбранный в контекст объект замещает соответствующий объект в контексте устройства. Например, если аргумент pObject обобщенной версии данной функции указывает на объект класса CPen, то данная функция замещает в данном контексте устройства текущее перо на перо, указанной в аргументе pObject. Приложение может выбирать битовый образ только в контекст устройства памяти и этот битовый образ не может быть выбран одновременно в два и более контекстов устройства памяти. Формат битового образа должен быть монохромным или совместимым с контекстом данного устройства. В противном случае функция SelectObject возвращает ошибку. В версии Windows 3.1 и более поздних версиях функция SelectObject возвращает ту же самую величину независимо от того, используется ли она в метафайлах или нет. В предыдущих версиях данная функция при вызове ее в метафайлах возвращала ненулевое значение в случае своего успешного завершения, и нулевое значение в противном случае.