Перевірка орфографії за допомогою Word

Гайдар І. Магдануров

Навіщо робити те, що вже зроблено іншими? Тому для перевірки орфографії у ваших додатках можна використовувати один з найпопулярніших текстових редакторів – Word від Microsoft. На прикладі створення простого додатка я покажу, як це зробити.

Створюєте стандартний проект, натягаєте не форму text1, multiline = true і command1. Тепер найважливіше – підключаєте бібліотеку Microsoft Word 9.0 Object Library (це для Office 2000, для `97 – Microsoft Word 7.0 Object Library), важить вона близько 536 KB, але тягати її за собою не треба, тому що вже Office встановлений якщо не у всіх, то Word вже точно майже у всіх.

До речі в цій бібліотеці ще багато корисних властивостей, які є в Word, але це вже до теми не відноситься, та й тепер уже ви самі можете за допомогою Object Browser в VB, подивитися їх. Використання аналогічно тому, яке я наведу тут далі.

Так, я відволікся, після того, як підключили бібліотеку додайте такий код:

Dim WordApplication As Object

Private Sub Command1_Click()
Set WordApplication = New Word.Application
WordApplication.Documents.Add
WordApplication.Visible = False
WordApplication.Selection.Text = Text1.Text
WordApplication.ActiveDocument.CheckSpelling
Text1.Text = WordApplication.Selection.Text
WordApplication.ActiveDocument.Close wdDoNotSaveChanges
WordApplication.Quit
Set WordApplication = Nothing
End Sub

Тепер поясню. Спочатку ми оголошуємо змінну типу об'єкт. Все вона оголошена і може працювати. При натисканні на кнопку відбувається наступне: створюється новий об'єкт Word.Application, додається новий документ, який робиться невидимим користувача, в цей документ копіюється вміст текстового вікна нашого застосування, перевіряється орфографія.

Якщо під час перевірки виявиться помилка, то з'явиться стандартне вордівський віконце з пропозицією варіантів. Після перевірки оновлений або залишений без змін текст повертається в текстове вікно нашого застосування, а Word закривається без запиту на збереження, тому що вказана константа wdDoNotSaveChanges, потім закривається сам Word, а пам'ять очищається від нашого об'єкта.

Примітки:

Set WordApplication = New Word.Application

Set WordApplication = Nothing

Потрібно мати у своєму розпорядженні саме в процедурі перевірки, тому що це дозволить уникнути повідомлення про помилку при повторної спроби перевірки за сеансом, тому що якщо помістити в подію завантаження і вивантаження форми, то об'єкт буде створювати помилку.

Для використання цього методу потрібно, щоб на машині клієнта стояв Office або як мінімум Word

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*