C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 105 - Сохраняем документ с объектом OLE / MFC шаг за шагом / Visual C++

Шаг 105 - Сохраняем документ с объектом OLE

Будем дальше мучать наш проект. Сохранение как известно производится в функции Serialize класса документа. На данный момент она у нас такая.

void CTestOleContCntrItem::Serialize(CArchive& ar)
{
	ASSERT_VALID(this);

	// Call base class first to read in COleClientItem data.
	// Since this sets up the m_pDocument pointer returned from
	//  CTestOleContCntrItem::GetDocument, it is a good idea to call
	//  the base class Serialize first.
	COleClientItem::Serialize(ar);

	// now store/retrieve data specific to CTestOleContCntrItem
	if (ar.IsStoring())
	{
		// TODO: add storing code here
	}
	else
	{
		// TODO: add loading code here
	}
}
Как видите не сохраняется рамка, в которой он находится. Это совсем не хорошо. Давайте изменим наш метод. Я хочу, чтобы сохранялось как содержимое объекта так и его местоположение.
void CTestOleContCntrItem::Serialize(CArchive& ar)
{
	ASSERT_VALID(this);
	COleClientItem::Serialize(ar);

	if (ar.IsStoring())
	{
		ar << m_Rect;
	}
	else
	{
		ar >> m_Rect;
	}
}

Ну что ? Попробуем ? Запускайте проект. Вставляем лист Excel. Схватите за рамку и поставьте его в центре. Введите две цифры и сложите их по формуле. Сохраните файл. Остановите работу программы, запустите снова и прочитайте файл. Вы увидите таблицу на том же месте. Только активизировать мы её не сможем, так как не умеем обработывать двойные щелчки мышью и так далее.


Загрузить проект | | |
Автор Каев Артем.
[AD]