Проверка орфографии с помощью Microsoft 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
Оставить комментарий
Оставлять комментарии могут только зарегистрированные пользователи.
Если вы не являетесь зарегистрированным пользователем, то вам необходимо зарегистрироваться. Регистрация бесплатна. Если вы уже зарегистрированы на CodeNet, то вам необходимо ввести логин и пароль в верхней (Alt-U) части страницы.


