Форум программистов, компьютерный форум, киберфорум
C++ Qt
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/18: Рейтинг темы: голосов - 18, средняя оценка - 4.56
0 / 0 / 0
Регистрация: 03.04.2021
Сообщений: 118
1

Открытие word

18.10.2021, 19:48. Показов 3228. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Пытаюсь открыть word но не получается
C++ (Qt)
1
2
3
4
5
  QAxObject *pword = new QAxObject("Word.Application");
    QAxObject *pdoc = pword->querySubObject("Documents");
    pdoc = pdoc->querySubObject("add()");
 
    pword->setProperty("Visable", true);
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.10.2021, 19:48
Ответы с готовыми решениями:

Открытие документов word без Word
Можно как нормально открывать документы, сделанные на word без word? Если да, то какие проги нужно...

Открытие Word'а
Из нижеприложенного кода, необходимо открыть сразу документ ворд (указать пусть). Как сделать не...

Открытие URL из WORD
приветствую общественность, возникла трабала, нужна помощь в решении :pardon: изначально всё...

Открытие приложения Word
При открытии приложения Word появляется окно:Недостаточно памяти илиместа на диске для запуска...

10
459 / 357 / 69
Регистрация: 29.05.2018
Сообщений: 1,051
18.10.2021, 22:09 2
Цитата Сообщение от Black King Посмотреть сообщение
pword->setProperty("Visable", true);
Может, Visible?
0
0 / 0 / 0
Регистрация: 03.04.2021
Сообщений: 118
19.10.2021, 07:22  [ТС] 3
Ender Che
Может быть.

Добавлено через 5 минут
Получилось, но хотелось бы открыть конкретный документ word. Знаете как это сделать?
0
459 / 357 / 69
Регистрация: 29.05.2018
Сообщений: 1,051
19.10.2021, 07:42 4
Цитата Сообщение от Black King Посмотреть сообщение
Знаете как это сделать?
Нет, увы.

Добавлено через 13 минут
Ну, с другой стороны, можно попробовать без прибабахов, если надо именно что просто документ открыть:
C++ (Qt)
1
QDesktopServices::openUrl(QUrl::fromLocalFile("G:\\Text.docx"));
0
0 / 0 / 0
Регистрация: 03.04.2021
Сообщений: 118
19.10.2021, 09:17  [ТС] 5
Ender Che
Как я понял из документации QDesktopServices он не имеет возможности ввести в word какие-то данные. Это так или нет?

Добавлено через 20 минут
Ender Che
Мне конкретно нужен функционал, который будет предоставлять мне функционал вывода информации из word и ввода информации в word.
0
683 / 458 / 160
Регистрация: 01.10.2015
Сообщений: 1,264
19.10.2021, 10:10 6
Подключаете нужные заголовочники
C++ (Qt)
1
2
3
#include <QAxObject>
#include <QFileDialog>
#include <QStandardPaths>
У QAxObject есть метод dynamicCall, позволяющий вызвать нужный вам метод COM-объекта.

C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
QFileDialog* fileDialog = new QFileDialog(this);
    fileDialog->setDirectory(QStandardPaths::writableLocation(QStandardPaths::DocumentsLocation));
    fileDialog->setNameFilter("Документы Word (*.docx, *doc)");
 
    if (fileDialog->exec() != QFileDialog::Accepted)
        return;
    auto files = fileDialog->selectedFiles();
    if (files.isEmpty())
        return;
 
    auto word = new QAxObject("Word.Application", this);
    auto doc = word->querySubObject("Documents");
 
    doc->dynamicCall("Open(const QString&)", files.at(0));
    word->setProperty("Visible", true);
Вообще, нужная документация легко находится прямо на сайте мелко-мягких, это я об объектной модели Word'а.
0
0 / 0 / 0
Регистрация: 03.04.2021
Сообщений: 118
19.10.2021, 19:44  [ТС] 7
0x90h
Это конечно всё интересно, но у меня открывается пустой word. Хотелось бы открыть word. который я создал.
0
683 / 458 / 160
Регистрация: 01.10.2015
Сообщений: 1,264
19.10.2021, 20:35 8
Black King, это еще интереснее, но у меня работает, как должно - диалог выбора файла, выбираете документ, запускается Word с этим документом.

но у меня открывается пустой
Вот и покажите ваш код, приводящий к подобному результату.
0
0 / 0 / 0
Регистрация: 03.04.2021
Сообщений: 118
20.10.2021, 09:55  [ТС] 9
0x90h
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    QFileDialog* fileDialog = new QFileDialog(this);
        fileDialog->setDirectory(QStandardPaths::writableLocation(QStandardPaths::DocumentsLocation));
        fileDialog->setNameFilter("Документы Word (*.docx)");
 
        if (fileDialog->exec() != QFileDialog::Accepted)
            return;
        auto files = fileDialog->selectedFiles();
        if (files.isEmpty())
            return;
 
        auto word = new QAxObject("Word.Application", this);
        auto doc = word->querySubObject("Documents");
 
        doc->dynamicCall("Open(const QString&)", files.at(0));
        word->setProperty("Visible", true);*/
0
683 / 458 / 160
Регистрация: 01.10.2015
Сообщений: 1,264
20.10.2021, 10:20 10
Код рабочий, но есть нюансы, связанные с самим вордом - может генерироваться исключение в QAxBase, что-то вроде
Открытие word

Чтобы добиться генерации исключения, пришлось, например, дать длинное название на кириллице вордовскому файлу. А вообще, обработка исключений - это уже ваше дело, как программиста. Вы задали вопрос, "как открыть конкретный документ", вам ответили, привели ссылку на функцию из объектной модели Word, и некий минимальный образец, как применить. Обработку ошибок добавляйте сами.
0
1352 / 851 / 365
Регистрация: 26.02.2015
Сообщений: 3,799
20.10.2021, 15:57 11
Может попытаться найти библиотеку для работы с Word?
1
20.10.2021, 15:57
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.10.2021, 15:57
Помогаю со студенческими работами здесь

Открытие Word документа
Сразу к делу, вот сделал открытие Word документа в программе, все работает. А если я открываю...

Открытие Word файла
Здраствуйте. Вот что б открыть тхт в richTextBox1 OpenFileDialog ofd = new OpenFileDialog(); ...

Открытие WORD документа
Пишу учебник по математике и хотел немного упростить себе задачу. Как и с каким компонентам можно...

Открытие документа MS Word в Delphi.
Добрый вечер! Ребята, подскажите, пожалуйста, как открыть готовый документ Word для просмотра?

Открытие Word'а из прогрaммы Excel
Здравствуйте, скажите как можно открыть doc файл из программы написанной в Excel таким образом что...

Открытие содержимого Word в WebBrowser
Всем привет! Такой вопрос, можно ли, сделать так, что всё содержимое вордовского документа, со всем...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru