Название: "поиск и замена" в word Отправлено: admsasha от Октябрь 15, 2009, 09:54 А как в открытом документе сделать "поиск и замена"
открыл, например test.doc, а дальше ? QAxObject word("Word.Application"); word.setProperty("Visible", true); word.dynamicCall("Activate()"); word.querySubObject("Documents")->querySubObject("Open(QVariant)", "c:\\test.doc"); Название: Re: "поиск и замена" в word Отправлено: CroCIV от Октябрь 15, 2009, 10:34 вотэдак http://wiki.crossplatform.ru/index.php/Работе_с_MS_Office_с_помощью_ActiveQt (http://wiki.crossplatform.ru/index.php/Работе_с_MS_Office_с_помощью_ActiveQt)
если тут чего-то нет, то лезешь в справку по MS VB Word или чего там тебе надо, находишь интересующие тебя классы свойства и методы, разбираешься с ними и добавляешь в эту же статью Название: Re: "поиск и замена" в word Отправлено: admsasha от Октябрь 15, 2009, 10:45 вотэдак http://wiki.crossplatform.ru/index.php/Работе_с_MS_Office_с_помощью_ActiveQt (http://wiki.crossplatform.ru/index.php/Работе_с_MS_Office_с_помощью_ActiveQt) Да, её я читал, там про excel и нужного нет.если тут чего-то нет, то лезешь в справку по MS VB Word или чего там тебе надо, находишь интересующие тебя классы свойства и методы, разбираешься с ними и добавляешь в эту же статью В VBA это выглядит так Код: Selection.Find.ClearFormatting как перевести на ActiveQt я не могу сообразить ??? :-\ Название: Re: "поиск и замена" в word Отправлено: CroCIV от Октябрь 15, 2009, 12:51 какнибудьэдак:
Код: ... Название: Re: "поиск и замена" в word Отправлено: admsasha от Октябрь 16, 2009, 04:59 какнибудьэдак: Код: ... Цитировать QAxBase::dynamicCallHelper: Find: No such property in [unknown] Название: Re: "поиск и замена" в word Отправлено: CroCIV от Октябрь 16, 2009, 08:40 Selection - обьект класса Application
Find - бьект класса Selection ссно чтобы получить указатель на Find, надо сделать что-то подобное Код: QAxObject * word = new QAxWidget("Word.Application"); QtActiveX - это не самостоятельный язык, а всего-лишь обертка, позволяющая получить доступ к обьектам COM, там все обращения такие же, как и в VB, только через querySubObject() и dynamicCall() ... Название: Re: "поиск и замена" в word Отправлено: admsasha от Октябрь 22, 2009, 02:26 Цитировать C:/msys/1.0/home/test/form1.cpp:18: error: cannot convert `QAxWidget*' to `QAxObject*' in initialization наверное, должно быть так ?Код: QAxObject * word = new QAxObject("Word.Application"); Цитировать C:/msys/1.0/home/test/form1.cpp:26: error: `selection' was not declared in this scope QAxObject *selection объявить в .h ?Цитировать C:/msys/1.0/home/test/form1.cpp:29: warning: the address of `static QWidget* QWidget::find(HWND__*)', will always evaluate as `true' Вот с этим не понял, что ему надо...Название: Re: "поиск и замена" в word Отправлено: CroCIV от Октябрь 22, 2009, 08:22 наверное, должно быть так ? да у меня там очепяткаКод: QAxObject * word = new QAxObject("Word.Application"); Цитировать C:/msys/1.0/home/test/form1.cpp:26: error: `selection' was not declared in this scope QAxObject *selection объявить в .h ?Цитировать C:/msys/1.0/home/test/form1.cpp:29: warning: the address of `static QWidget* QWidget::find(HWND__*)', will always evaluate as `true' Вот с этим не понял, что ему надо... |