Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Word
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.02.2010, 18:14   #1
Diego__
Форумчанин
 
Регистрация: 12.08.2009
Сообщений: 118
По умолчанию Как убрать лишний Enter?

Создаю пустой документ. В цикле вставляю ранее подготовленный файл который содержит 1шейп. На каждой итерации цикла в основном документе появляется 1 enter. Как его убрать?
Код:
try
{
	_bstr_t str(L"D://document.xml");
	int shapesCount = 0;
	for (int i = 0; i < 5; ++i)
	{
		Word::RangePtr range = m_WordDocument->GetParagraphs()->GetLast()->GetRange();
		if (range->InsertFile(str) != S_OK)
                       return ;
	}
}
catch (_com_error &er)
{
	const TCHAR * comMessage = er.ErrorMessage();
}
Пробую в конце каждой итерации делать
Код:
int begin = m_WordDocument->GetParagraphs()->GetLast()->GetRange()->End-1;
int end = m_WordDocument->GetParagraphs()->GetLast()->GetRange()->End;
CComVariant beginVar(begin);
CComVariant endVar(end);
Word::RangePtr tmpRange = m_WordDocument->Range(&beginVar, &endVar);
tmpRange->Delete();
Enter удаляется, но при следующем range->InsertFile(str) ранее вставленный шейп затирается. Как правильно использовать Delete? У него есть 2 параметра, пробовал подставить типы параграф, юнит, символ и количество 1 - что то идет не так. Или как сделать чтоб ранее вставленный шейп не затирался?

попробовал после delete-a ставить
CComVariant sectonBreak(Word::wdSectionBreakCon tinuous);
tmpRange->InsertBreak(&sectonBreak);
лишний enter пропал, но если отступ от верха страницы остался. При N-ой итерации 1 страница расползается на 2 страницы, что тоже весьма нежелательно.
Т.е. хочется чтоб при сколько угодно большом числе вставленных шейпах все они были на 1ой странице.
Diego__ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как вставить Enter Аlex Общие вопросы Delphi 18 09.11.2018 16:26
как можно из ячеек автоматически убрать знак “enter” RafaelMirak Microsoft Office Excel 9 14.08.2012 14:28
как отключть Enter в RichEdit1 aesoem Компоненты Delphi 6 01.08.2009 18:59
как задействовать ENTER? 54rus Помощь студентам 9 23.07.2009 18:18
Как программно нажать Enter, зная Handle? MURDERER Общие вопросы Delphi 1 15.09.2008 00:00