Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Delphi - Word+Delphi

Ответить
Настройки темы
Delphi - Word+Delphi

Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


Вот скажем нашел я в одном документе все что мне нать, необходимо все это добро вставить в другой документ и сохранить, не закрывая первый (не все добро повыбирали, жадные мы ). А получается все время вывод в первый док, причем с затиранием всего его содержимого...
Даже такой код творит что-то странное имхо:
Код: Выделить весь код
WordConnect(dmData.WordApplication);
      FileName:=dmData.odInFile.FileName;
      dmData.WordApplication.Documents.Open(FileName,
        EmptyParam,EmptyParam,EmptyParam,
        EmptyParam,EmptyParam,EmptyParam,
        EmptyParam,EmptyParam,EmptyParam,
        EmptyParam,EmptyParam);
       frMain.Caption:=IntToStr(dmData.WordApplication.Documents.Count);
       frMain.Caption:=frMain.Caption+'->'+dmData.WordApplication.Documents.Item(DocIndex).Name;
       dmData.WordApplication.Documents.Add(EmptyParam,NewTemplate,EmptyParam,EmptyParam);
       DocIndex:=DocIndex+1;
       dmData.WordDocument.ConnectTo(dmData.WordApplication.Documents.Item(DocIndex));
       frMain.Caption:=frMain.Caption+'*'+IntToStr(dmData.WordApplication.Documents.Count);
       frMain.Caption:=frMain.Caption+'->'+dmData.WordApplication.Documents.Item(DocIndex).Name;
В результате в кэпшене: 1->Test3.doc*2->Test3.doc хотя существуют два окна ворда с заголовками Test3.doc и Документ2.doc. Что за грабли?

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 22:34, 08-08-2003

 

Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


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

Скажем откроем доку:

Код: Выделить весь код
dmData.WordApplication.Documents.Open(FileName,
        EmptyParam,EmptyParam,EmptyParam,
        EmptyParam,EmptyParam,EmptyParam,
        EmptyParam,EmptyParam,EmptyParam,
        EmptyParam,EmptyParam);
      dmData.WordDocument.ConnectTo(dmData.WordApplication.ActiveDocument);
Теперь WordDocument будет давать возможность работать с этим открытым доком.

Добавим доку:

Код: Выделить весь код
procedure NewWordDoc(WordApplication: TWordApplication;WordDocument: TWordDocument);
  Var
    NewTemplate:OleVariant;
  Begin
    NewTemplate:=False;
    WordApplication.Documents.Add(EmptyParam,NewTemplate,EmptyParam,EmptyParam);
    WordDocument.ConnectTo(WordApplication.ActiveDocument);
  End;
Теперь передаем в процедурку любой имеющийся экземпляр TWordDocument и работаем с ним без проблем... воть.

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 20:16, 09-08-2003 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Delphi - Word+Delphi

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Delphi - Delphi | UpperCase на Delphi 7 Cognolio Программирование и базы данных 3 26-01-2006 15:42
Delphi - Как в Delphi узнать, запущен ли Word или Excel Kroc Программирование и базы данных 5 27-10-2004 00:26
Word H3rcul3s Хочу все знать 1 12-06-2004 23:53
Delphi - Word+Delphi Prisoner Программирование и базы данных 1 09-08-2003 20:18
Delphi - word + delphi Nealles Программирование и базы данных 2 03-08-2003 11:18




 
Переход