Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

Значения аргумента uCommand

Предпринимаемые действия

Формат аргумента dwData

HELP_COMMAND

Выполняет макрос справки или строку макроса.

Указатель на строку, содержащую имя выполняемого макроса справки. Если в строке указано несколько имен макросов, имена должны разделяться точкой с запятой. Для некоторых макросов необходимо использовать короткую форму имени, поскольку справочная система Windows не позволяет работать с длинными именами.

HELP_CONTENTS

Выводит содержимое раздела справки, определенное ключевым словом Contents в разделе [OPTIONS] файла. hpj. Эта команда используется для обеспечения совместимости с предыдущими версиями. Новые приложения должны использовать файл. cnt и команду HELP_FINDER.

Игнорируется и устанавливается в 0.

HELP_CONTEXT

Выводит тему справки, заданную контекстным идентификатором, определенным в разделе [MAP] файла. hpj.

Целое число без знака, содержащее контекстный идентификатор раздела.

HELP_CONTEXTMENU

Выводит меню Help для указанного окна. Затем выводит справочную информацию по выделенному элементу управления во всплывающем окне.

Указатель на массив пар идентификаторов. Первое двойное слово в каждой паре представляет собой идентификатор элемента управления, а второе слово — контекстный идентификатор раздела.

HELP_CONTEXTPOPUP

Выводит во всплывающем окне тему справки, заданную контекстным идентификатором, определенным в разделе [MAP] файла. hpj.

Целое число без знака, содержащее контекстный идентификатор раздела.

HELP_FINDER

Выводит диалоговое окно Справочная система.

Игнорируется и устанавливается в 0.

HELP_FORCEFILE

Обеспечивает вывод требуемого файла справки справочной системой. Если выводится другой файл справки, справочная система выводит нужный. В противном случае не выполняет никаких действий.

Игнорируется и устанавливается в 0.

HELP_HELPONHELP

Если доступен файл WINHLP32.HLP, выводит справочную информацию по пользованию справочной системой.

Игнорируется и устанавливается в 0.

HELP_INDEX

Выводит содержимое раздела справки, определенное ключевым словом Contents в разделе [OPTIONS] файла. hpj. Эта команда используется для обеспечения совместимости с предыдущими версиями. Новые приложения должны использовать файл. cnt и команду HELP_FINDER.

Игнорируется и устанавливается в 0.

HELP_KEY

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

Указатель на строку, содержащую ключевое слово. Несколько ключевых слов должны разделяться точкой с запятой.

HELP_MULTIKEY

Выводит тему справки по ключевому слову, содержащемуся в альтернативной таблице ключевых слов.

Указатель на объект структуры MULTIKEYHELP, определяющей символ нижнего индекса таблицы и ключевое слово.

HELP_PARTIALKEY

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

Указатель на строку, содержащую ключевое слово. Несколько ключевых слов должны разделяться точкой с запятой. Для вывода содержания без указания ключевого слова необходимо передать указатель на пустую строку.

HELP_QUIT

Сообщает справочной системе Windows о прекращении работы с ней. Если со справочной системой не работают другие приложения, закрывает справочную систему Windows.

Игнорируется и устанавливается в 0.

HELP_SETCONTENTS

Определяет содержимое раздела Contents. Справочная система Windows выводит эту тему, если файл справки не имеет связанного с ним файла. cnt.

Целое число без знака, содержащее контекстный идентификатор раздела Contents.

HELP_SETPOPUP_POS

Устанавливает позицию всплывающего окна. Позиция всплывающего окна устанавливается таким образом, как будто бы указатель мыши располагался в указанной точке при вызове данного окна.

Указатель на объект структуры POINT.

HELP_SETWINPOS

Выводит окно справки, если оно было минимизировано или располагалось в памяти.

Указатель на объект структуры HELPWININFO, определяющей размер и положение первичного или вторичного окна справки.

HELP_TCARD

Указывает на то, что данная команда относится к последовательности вторичных окон. Данная команда комбинируется с другими командами с использованием операции логического ИЛИ.

Зависит от команды, с которой объединена данная команда.

HELP_WM_HELP

Выводит во всплывающее окно справку об элементе управления, указанном в аргументе hWndMain.

Указатель на массив пар идентификаторов. Первое двойное слово в каждой паре представляет собой идентификатор элемента управления, а второе слово — контекстный идентификатор раздела.

Классы

CArchive

Класс CArchive позволяет сохранять на диске достаточно сложные объекты, а также загружать их в память по мере необходимости. Хранение объектов производится в файлах с последовательным доступом. Данный тип файла можно представить себе как двоичный поток данных. Подобно потокам, используемым в операциях ввода-вывода, архив использует буферизированную запись и чтение данных в память и из памяти. Поток ввода-вывода обрабатывает последовательности символов ASCII, но архив обрабатывает двоичные данные объектов в более эффективном формате, не использующем избыточности.

НЕ нашли? Не то? Что вы ищете?

Прежде, чем использовать объект класса архива, необходимо создать соответствующий ему объект класса CFile. При этом необходимо удостовериться, что в этих объектах соответствуют атрибуты доступа к данным. Одному объекту класса CFile может соответствовать не более одного активного объекта класса CArchive.

При создании объекта класса CArchive он присоединяется к объекту класса CFile (или производного от него класса), соответствующего открытому файлу. При этом следует также определить режим работы с архивом: будет ли он использоваться для загрузки или сохранения данных. Объект класса CArchive может работать не только с простейшими типами данных, но также и объектами классов, производных от класса CObject, позволяющих сохранять свои данные в последовательном формате. Класс, допускающий сохранение своих данных в последовательном формате, обычно имеет функцию Serialize, а при его описании и реализации используются макросы DECLARE_SERIAL и IMPLEMENT_SERIAL.

Перегруженные операторы чтения данных из архива (>>) и записи данных в архив (<<) обеспечивают удобный программный интерфейс работы с архивом. Аргументом данных операторов могут быть как переменные простейших типов, так и объекты классов, производных от класса CObject.

Описание данного класса содержится в файле заголовка afx. h.

Примеры использования данного класса содержатся во многих главах данной книги, но наиболее полное его описание дано в главе 2.

operator >>

friend CArchive& operator >>(CArchive& ar, CObject *& pOb);
throw(CArchiveException, CFileException, CMemoryException);

friend CArchive& operator >>(CArchive& ar, const CObject *& pOb);
throw(CArchiveException, CFileException, CMemoryException);

CArchive& operator >>(BYTE& by);
throw(CArchiveException, CFileException);

CArchive& operator >>(WORD& w);
throw(CArchiveException, CFileException);

CArchive& operator >>(int& i);
throw(CArchiveException, CFileException);

CArchive& operator >>(LONG& l);
throw(CArchiveException, CFileException);

CArchive& operator >>(DWORD& dw);
throw(CArchiveException, CFileException);

CArchive& operator >>(float& f);
throw(CArchiveException, CFileException);

CArchive& operator >>(double& d);
throw(CArchiveException, CFileException);

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

Ссылка на объект класса CArchive, позволяющая использовать в одной строке программы несколько подобных операторов.

Описание

Читает указанный объект или переменную простейшего типа из архива.

Если в файле реализации класса использовался макрос IMPLEMENT_SERIAL, то данный оператор вызывает защищенную функцию ReadObject с ненулевым указателем на объект класса, производного от класса CObject, который в свою очередь, вызывает функцию Serialize данного класса.

operator <<

friend CArchive& operator <<(CArchive& ar, const CObject* pOb);
throw(CArchiveException, CFileException);

CArchive& operator <<(BYTE by);
throw(CArchiveException, CFileException);

CArchive& operator <<(WORD w);
throw(CArchiveException, CFileException);

CArchive& operator <<(int i);
throw(CArchiveException, CFileException);

CArchive& operator <<(LONG l);
throw(CArchiveException, CFileException);

CArchive& operator <<(DWORD dw);
throw(CArchiveException, CFileException);

CArchive& operator <<(float f);
throw(CArchiveException, CFileException);

CArchive& operator <<(double d);
throw(CArchiveException, CFileException);

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

Ссылка на объект класса CArchive, позволяющая использовать в одной строке программы несколько подобных операторов.

Описание

Записывает указанный объект или переменную простейшего типа в архив.

Если в файле реализации класса использовался макрос IMPLEMENT_SERIAL, то данный оператор вызывает защищенную функцию WriteObject с ненулевым указателем на объект класса, производного от класса CObject, который в свою очередь, вызывает функцию Serialize данного класса.

CArchive::GetFile

CFile* GetFile() const;

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

Указатель на объект класса CFile, связанный с данным архивом.

Описание

Позволяет получить указатель на объект класса CFile, связанный с данным архивом. Перед использованием данной функции необходимо очистить буфер данного архива с использованием функции Flush.

IsStoring

BOOL IsStoring() const;

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

Ненулевое, если архив в настоящее время используется для записи в него информации, и нулевое в противном случае.

Описание

Определяет режим использования архива. Данная функция используется в функции Serialize классов, поддерживающих работу с архивом. Если функция IsStoring возвращает ненулевое значение, то функция IsLoading возвращает нулевое значение. И наоборот.

CArray

template< class TYPE, class ARG_TYPE > class CArray : public CObject

Аргументы

q  TYPE — параметр шаблона, определяющий тип объектов, хранящихся в массиве. Объекты данного типа возвращаются функциями-членами класса CArray.

q  ARG_TYPE — параметр шаблона, определяющий тип, используемый для доступа к объектам, хранящиеся в массиве. Часто он представляет собой ссылку на значение параметра TYPE. Объекты данного типа используются в качестве аргументов функций-членов класса CArray.

Описание

Класс CArray служит для хранения информации в массивах, аналогичных массивам языка C, но допускает динамическое изменение их размера.

Индекс первого элемента массива всегда равен 0. Пользователь может зафиксировать верхнюю границу массива или позволить ему расти при добавлении новых элементов, если их индекс превышает его верхнюю границу. Для данного массива всегда выделяется единая область памяти, даже в том случае, когда отдельные его элементы не используются.

Как и в случае массивов языка C, время доступа к любому элементу массива CArray постоянно и не зависит от размера массива.

Прежде чем использовать массив, необходимо вызвать функцию SetSize для установки его размера и резервирования необходимой памяти. Если при создании массива не использовалась функция SetSize, то при добавлении в него элементов часто будет производиться перераспределение памяти и копирование массива, что может привести к замедлению работы программы и к фрагментации памяти.

При необходимости вывести диагностическую информацию об отдельном элементе массива, необходимо указать глубину объекта CDumpContext равной 1 или большей величине.

Описание данного класса содержится в файле заголовка afxtempl. h.

Пример использования данного класса приведен в главе 11.

Add

int Add(ARG_TYPE newElement);
throw(CMemoryException);

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

Индекс вставленного элемента

Аргументы

q  ARG_TYPE — параметр шаблона, определяющий тип аргументов, используемых для ссылки на элементы массива.

q  newElement — элемент, добавляемый в массив.

Описание

Добавляет новый элемент в конец массива, увеличивая его размер на 1. Если в функции SetSize аргумент nGrowBy имеет значение больше 1 и увеличение размера массива на 1 привело к выходу за пределы отведенной ему памяти, то для массива выделяется дополнительная память, в которую могут быть записаны новые элементы без новой операции выделения памяти, размер которой определяется аргументом nGrowBy функции SetSize. Однако максимальный индекс элемента в массиве возрастает только на 1.

GetSize

int GetSize() const;

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

Размер массива

Описание

Возвращает размер массива. Поскольку первый элемент массива имеет нулевой индекс, размер массива всегда на 1 превышает максимальный индекс элемента массива.

GetUpperBound

int GetUpperBound() const;

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

Максимальный индекс элемента массива. Если возвращаемое значение равно –1, то данный массив не содержит элементов.

Описание

Возвращает максимальный индекс элемента массива. Поскольку первый элемент массива имеет нулевой индекс, максимальный индекс элемента массива всегда на 1 меньше, чем размер массива.

operator [ ]

TYPE& operator [](int nIndex);

TYPE operator [](int nIndex) const;

Аргументы

q  TYPE — параметр шаблона, определяющий тип объектов, хранящихся в массиве.

q  nIndex — индекс элемента, к которому необходимо получить доступ.

Описание

Эти операторы могут использоваться вместо функций SetAt и GetAt. Первый оператор используется для обычных массивов и может вызываться как с левой, так и с правой стороны от оператора присваивания. Второй оператор используется для массивов констант и может вызываться только с правой стороны оператора присваивания.

В отладочной версии библиотеки производится проверка того, что используемый индекс массива находится в разрешенном диапазоне значений.

RemoveAll

void RemoveAll();

Описание

Удаляет все указатели из массива. Если массив уже пуст, функция все равно работает.

SetSize

void SetSize(int nNewSize, int nGrowBy = -1);
throw(CMemoryException);

Аргументы

q  nNewSize — новый размер массива (количество элементов). Должен иметь значение большее или равное 0.

q  nGrowBy — минимальное количество элементов, на которое будет увеличен размер массива при необходимости.

Описание

Устанавливает размер пустого или существующего массива. Выделяет память в случае необходимости. Если новый размер массива меньше его прежнего размера, то массив усекается и вся неиспользуемая память освобождается. Для повышения производительности приложений, использующих массив, необходимо вызвать функцию SetSize до начала работы с ним. Правильный выбор ее аргументов позволит исключить или существенно уменьшить объем операций по перераспределению памяти и копирования массива при добавлении к нему элементов.

Аргумент nGrowBy влияет только на распределение памяти при увеличении размеров массива. Его значение никак не отражается на возвращаемых значениях функций GetSize и GetUpperBound. Если используется значение, выбранное по умолчанию, библиотека MFC выделяет память таким образом, чтобы избежать фрагментации памяти и оптимизировать работу с массивом для большинства практических случаев.

CBitmap

Объекты класса CBitmap содержат функции для работы с битовыми образами интерфейса графических устройств Windows. Для использования объекта класса CBitmap его необходимо создать с помощью конструктора, а затем связать с ним дескриптор битового образа с помощью одной из функций инициализации. После этого можно вызывать функции данного класса.

Описание данного класса содержится в файле заголовка afxwin. h.

Пример использования данного класса приведен в главе 6.

CreateCompatibleBitmap

BOOL CreateCompatibleBitmap(CDC* pDC, int nWidth, int nHeight);

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

Ненулевое, в случае успешного завершения работы функции, и нулевое в противном случае.

Аргументы

q  pDC — указатель на объект класса контекста устройства.

q  nWidth — определяет ширину битового образа (в элементах изображения).

q  nHeight — определяет высоту битового образа (в элементах изображения).

Описание

Инициализирует битовый образ, делая его совместимым с контекстом устройства, определяемого аргументом pDC. Битовый образ имеет то же число цветовых битовых плоскостей или то же число битов, используемых для кодирования цвета каждого из элементов изображения, что и указанный контекст устройства. После этой операции данный битовый образ может быть выбран в качестве текущего битового образа контекста устройства на который указывает аргумент pDC.

Если аргумент pDC указывает на контекст устройства памяти, инициализированный битовый образ имеет тот же формат, что и текущий битовый образ указанного контекста устройства. Контекст устройства памяти представляет собой область памяти, представляющую экран дисплея. Он может использоваться для подготовки изображений перед выводом их на экран. При создании контекста устройства памяти GDI автоматически выбирает в него монохромный битовый образ.

Поскольку в контекст устройства памяти могут быть выбраны как монохромные, так и цветные битовые образы, формат битового образа, возвращаемый функцией CreateCompatibleBitmap, использующей данный контекст устройства, может не совпадать при различных вызовах. Однако, во всех остальных случаях битовый образ имеет формат, определяемый только возможностями устройства.

По завершении работы с объектом класса CBitmap, инициализированным функцией CreateCompatibleBitmap, необходимо сначала удалить битовый образ из контекста устройства, а затем уничтожить сам объект класса CBitmap.

GetBitmapBits

DWORD GetBitmapBits(DWORD dwCount, LPVOID lpBits) const;

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

Нулевое значение в случае возникновения ошибки, и скопированное количество байт в битовом образе в противном случае.

Аргументы

q  dwCount — определяет количество байт, которые необходимо скопировать.

q  lpBits — указатель на буфер, в который будет записан битовый образ. Битовый образ представляет собой байтовый массив. Хранение информации производится по линиям горизонтальной развертки, для хранения которых используются 16-битные структуры. Поэтому, если битовый образ содержит нечетное количество столбцов, и для хранения информации о цвете каждого из элементов изображения используется нечетное количество байт, объем памяти, необходимый для хранения одной строки горизонтальной развертки будет на один байт превышать ее действительный размер.

Описание

Копирует битовый образ из объекта класса CBitmap в буфер, на который указывает аргумент lpBits. Аргумент dwCount определяет количество байт, которое необходимо скопировать в данный буфер. Для определения корректного значения аргумента dwCount следует вызывать функцию CGdiObject::GetObject для данного объекта класса битового образа.

SetBitmapBits

DWORD SetBitmapBits(DWORD dwCount, const void* lpBits);

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

Нулевое значение в случае возникновения ошибки, и скопированное количество байт в битовом образе в противном случае.

Аргументы

q  dwCount — определяет число байт, которое необходимо скопировать.

q  lpBits — указатель на область в оперативной памяти, из которой следует скопировать битовый образ в объект класса CBitmap.

Описание

Присваивает битам в битовом образе значения, содержащиеся в массиве lpBits.

CButton

Класс CButton содержит функции для работы с кнопками Windows. Кнопка представляет собой маленькое, прямоугольное дочернее окно, которое может находиться в двух состояниях, переключаемых щелчками мыши или клавишами клавиатуры. Данный элемент управления может использоваться самостоятельно или в группах. В зависимости от типа кнопки связанный с ней текст может располагаться внутри данного элемента управления или рядом с ним. Изменение состояния кнопки обычно отражается при ее отображении на экране.

Типичным примером кнопок являются флажки, переключатели и простые кнопки. К какому из данных типов кнопок будет относиться объект класса CButton, определяется ее стилем, задаваемым в функции Create при его создании.

Класс CBitmapButton, производный от класса CButton позволяет получать кнопки, в которых вместо текста помещается растровое изображение. Класс CBitmapButton позволяет использовать различные битовые образы для нажатой, отжатой, получившей фокус ввода и недоступной кнопок.

Объект данного класса может быть создан с использованием шаблона диалога или непосредственно пользователем. В обоих случаях сначала вызывается конструктор класса CButton, создающий объект данного класса, а затем вызывается функция Create, создающая кнопку Windows и связывающая ее с объектом класса CButton.

Объекты класса, производного от класса CButton можно создавать за один шаг. Для этого в конструкторе данного класса нужно вызвать функцию Create.

Для обработки сообщений Windows, посылаемых объектом класса кнопки объекту класса родительского окна (обычно это объект класса, производного от класса CDialog), необходимо добавить в карту сообщений родительского класса соответствующие макросы, а в сам класс — включить соответствующие функции обработки сообщений.

Макрос карты сообщений имеет следующий формат:

ON_Notification(id, memberFxn),

где параметр id определяет идентификатор дочернего окна элемента управления, а memberFxn — имя функции обработки данного сообщения.

Функция обработки сообщения объявляется следующим образом:

afx_msg void memberFxn();

Наиболее часто в качестве макросов обработки сообщений от кнопок используются:

r  ON_BN_CLICKED — пользователь нажал кнопку;

r  ON_BN_DOUBLECLICKED — пользователь дважды нажал кнопку.

Объект класса CButton, созданный с использованием ресурса диалога автоматически уничтожается при закрытии диалогового окна. При создании данного объекта пользователем он должен сам удалить его. Если данный объект создавался в куче с использованием оператора new, то при закрытии родительского окна он должен быть уничтожен с использованием оператора delete. Если же он создавался в стеке или был внедрен в объект класса родительского окна диалога, то он уничтожается автоматически.

Описание данного класса содержится в файле заголовка afxwin. h.

CButton::GetState

UINT GetState() const;

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

Определяет текущее состояние кнопки. Для выделения конкретной информации о состоянии кнопки могут использоваться следующие маски:

r  0x0003 — определяет состояние флажков и переключателей. Значение 0 говорит о том, что флажок сброшен, 1 — установлен, а 2 — что кнопка находится в неопределенном состоянии;

r  0x0004 — определяет выделение кнопки. Ненулевое значение означает, что данная кнопка выделена, то есть пользователь нажал и удерживает не ней левую кнопку мыши;

r  0x0008 — определяет фокус ввода. Ненулевое значение означает, что данная кнопка имеет фокус ввода.

Описание

Позволяет определить состояние кнопки.

SetCheck

void SetCheck(int nCheck);

Аргументы

q  nCheck — определяет состояние кнопки. Этот аргумент может принимать одно из следующих значений:

·  0 — кнопка сброшена;

·  1 — кнопка установлена;

·  2 — состояние кнопки не определено. Это значение состояния кнопки может быть установлено только в том случае, когда она имеет стиль BS_3STATE или стиль BS_AUTO3STATE.

Описание

Устанавливает или сбрасывает переключатели или флажки. Эта функция не оказывает никакого действия на простые кнопки.

CCmdUI

Класс CCmdUI используется в функциях обработки сообщения ON_UPDATE_COMMAND_UI в классах, производных от класса CCmdTarget.

Когда пользователь раскрывает меню в своем приложении, приложение должно определить состояние каждой его команды, каждая из которых может быть доступной или недоступной. Эта информация предоставляется функциями обработки сообщения ON_UPDATE_COMMAND_UI. Прототипы этих функций и соответствующие им макросы карты сообщений могут быть созданы с использованием мастера ClassWizard.

При раскрытии меню приложение ищет и вызывает функции обработки сообщения ON_UPDATE_COMMAND_UI, передавая им в качестве аргумента объект класса CCmdUI. Пользователь вызывает для данного объекта такие функции, как Enable или Check, позволяющие приложению правильно установить состояние для каждой команды меню.

На месте команд меню могут выступать кнопки панели инструментов или другие объекты пользовательского интерфейса. При этом все они будут использовать одну и ту же функцию обработки сообщения ON_UPDATE_COMMAND_UI.

В таблице П2.3 содержатся сведения о реакции отдельных элементов управления на вызов функций-членов класса CCmdUI.

Таблица П2.3. Воздействие функций класса CCmdUI на отдельные элементы управления

Элемент управления

Enable

SetCheck

SetRadio

SetText

Команда меню

Делает доступной или недоступной

Устанавливает или снимает флажок (v)

Устанавливает или снимает переключа

Устанавливает текст элемента управления

Кнопка панели инструментов

Делает доступной или недоступной

Выделяет, снимает выделение или переводит в неопределенное состояние

Работает аналогично функции SetCheck

Не используется

Панель строки состояния

Делает текст видимым или невидимым

Устанавливает выступающую или нормальную рамку

Работает аналогично функции SetCheck

Устанавливает текст в панели

Обычная кнопка в CDialogBar

Делает доступной или недоступной

Устанавливает или снимает флажок

Работает аналогично функции SetCheck

Устанавливает текст в кнопке

Обычный элемент управления в CDialogBar

Делает доступной или недоступной

Не используется

Не используется

Устанавливает текст окна

Класс CCmdUI не имеет базового класса.

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15