crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Active X и MS Word
straylon
  опции профиля:
сообщение 10.2.2010, 17:12
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 2
Регистрация: 10.2.2010
Пользователь №: 1461

Спасибо сказали: 0 раз(а)




Репутация:   0  


Здравствуйте! Использую компонент QAxWidget для отображения в главном окне своей программы документа Word.
Делаю это стандартным способом: ui.axWidget->setControl("C:/1.doc"), где axWidget собственно сам QAxWidget, размещенный на окно в дизайнере. Все работает нормально, однако после закрытия программы, остается процесс WINWORD.EXE, который подгружает память компьютера пользователя. Как при выходе его можно программно останавить? Буду благодарен за любые советы и помощь.
Вот код:
test::test(QWidget *parent, Qt::WFlags flags)
   : QMainWindow(parent, flags)
{
   ui.setupUi(this);
   connect (ui.pushButton, SIGNAL (clicked()), this, SLOT (active()));
   connect (ui.pushButton_2, SIGNAL (clicked()), this, SLOT (exit()));
}
void test::active()
{
   ui.axWidget->setControl("C:/1.doc"); // помещаю в QAxWidget документ

}
void test::exit() // это выполняется при закрытии
{
   ui.axWidget->dynamicCall("Quit()"); //не выходит
   ui.axWidget->close(); // виджет с документом закрывается, но процесс Winword.exe остается все равно
   //пробую так - тоже ничего
  QAxObject *app = ui.axWidget->querySubObject("Application");
  app->dynamicCall("Quit()");
}

test::~test()
{

}
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 18.4.2024, 4:56