Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Func.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.58 Mб
Скачать

CString::IsEmpty

BOOL IsEmpty( ) const;

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

Ненулевое, если объект класса CString имеет нулевую длину, и нулевое в противном случае.

Примечание

Проверяет, не содержит ли объект класса CString пустую строку.

Пример

CString s;

ASSERT( s.IsEmpty() );

CString::LoadString

BOOL LoadString( UINT nID ); throw( CMemoryException );

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

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

Аргументы

  1. nID — идентификатор строкового ресурса Windows.

Примечание

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

Пример

#define IDS_FILENOTFOUND 1

CString s;

if (! s.LoadString( IDS_FILENOTFOUND ))

{

AfxMessageBox("Ошибка при загрузке строкового ресурса: IDS_FILENOTFOUND");

...

}

CString::MakeReverse

void MakeReverse( );

Примечание

Инвертирует порядок следования символов в объекте класса CString.

Пример

CString s( "abc" );

s.MakeReverse();

ASSERT( s == "cba" );

CString::ReleaseBuffer

void ReleaseBuffer( int nNewLength = -1 );

Аргументы

  1. nNewLength — новая длина строки в символах, не считая завершающего её нулевого символа. Если строка завершается нулевым символом, то передача в качестве аргумента значения -1, устанавливает размер объекта класса CString равным текущей длине строки.

Примечание

Функция ReleaseBuffer используется для закрытия буфера, выделенного функцией GetBuffer. Если известно, что строка в буфере завершается нулевым символом, аргумент nNewLength может быть опущен. Если стока не завершается нулевым символом, её длина должна быть передана в аргументе nNewLength. Указатель, возвращаемый функцией GetBuffer становится некорректным после вызова функции ReleaseBuffer или любого другого метода класса CString.

Пример

// Пример использования функции CString::ReleaseBuffer

CString s;

s = "abc";

LPTSTR p = s.GetBuffer( 1024 );

strcpy(p, "abc"); // Работа с буфером

ASSERT( s.GetLength() == 3 ); // Проверка длины строки

s.ReleaseBuffer(); // Освобождение лишней памяти, указатель p

// не может больше использоваться.

ASSERT( s.GetLength() == 3 ); // Пооверка длины строки

CView

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

Класс представления является производным от класса CWnd. Одна и та же рабочая область окна может совместно использоваться несколькими классами представления. Связь между классом представления и классом окна осуществляется в шаблоне документа. Когда пользователь открывает новое окно или разбивает существующее, шаблон документа создает новый класс представления и присоединяет это к документу.

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

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

Класс представления осуществляет только отображение и изменение данных в документе, но не хранит эти изменения. Вся отображаемая на экране информация содержится в классе документа. Класс представления может непосредственно обращаться к данным, хранящимся в документе, если в последнем предусмотрены методы для доступа к этим данным.

После внесения изменений в документ класс представления, производящий данную операцию, обычно вызывает функцию CDocument::UpdateAllViews, посылающую другим классам просмотра, связанным с данным документом, сообщение о том, что в документ внесены изменения и классам просмотра необходимо обновить выводимую ими информацию. Эти сообщения обрабатываются функцией OnUpdate соответствующего класса просмотра.

Обычно, для вывода информации на экран используется функция CView::OnDraw. Эту функцию можно использовать, также, для осуществления предварительного просмотра печати и самой печати. Реализация цикл печати и предварительного просмотра документа возложена на приложение.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]