Форум: "Начинающим";
Текущий архив: 2007.01.21;
Скачать: [xml.tar.bz2];
ВнизСпеллер Word а для нужд программы. Найти похожие ветки
← →
AlexanderMS © (2007-01-03 16:37) [0]Как можно заставить вордовский спеллер проверить орфографию в произвольном сочетании слов?
← →
vlad-mal © (2007-01-03 20:49) [1]Например:
бросаем на форму:wdApp: TWordApplication;
wdDoc: TWordDocument;
С параметрами, например, такими:object wdApp: TWordApplication
AutoConnect = False
ConnectKind = ckRunningOrNew
AutoQuit = True
end
object wdDoc: TWordDocument
AutoConnect = False
ConnectKind = ckRunningOrNew
end
и реализуем два метода:procedure DoWord; // Инициализация MS Word
procedure WorkWithWord; // Собственно, работа
Реализация:procedure TForm1.DoWord;
var
Template, NewTemplate, DocumentType, Visible, ItemIndex: OleVariant;
begin
try // Попытка коннекта
wdApp.Connect;
ItemIndex := 1;
// wdApp.Application.EnableEvents := false; // Ускоряем
Template :=
"C:\Doc.Doc";
NewTemplate := False;
DocumentType := wdTypeDocument;
Visible := False;
wdApp.Documents.Add(Template, NewTemplate, DocumentType, Visible);
wdDoc.ConnectTo(wdApp.Documents.Item(ItemIndex));
except
on E: Exception do begin
ShowMessage("Ошибка активизации приложения Microsoft Word. " +
E.Message);
if Assigned(wdApp) then
if (wdApp.Documents.Count > 0) then begin
wdApp.AutoQuit := True; // Пусть не зависает фигня в системе!
end;
exit
end;
end;
try
WorkWithWord;
except
on E: Exception do begin
ShowMessage("Ошибка работы с Microsoft Word. " +
E.Message);
if Assigned(wdApp) then
if (wdApp.Documents.Count > 0) then
wdApp.AutoQuit := True; // Пусть не зависает фигня в системе!
exit
end;
end
end;
Ну и сама работа:procedure TForm1.WorkWithWord;
var
fsaveChanges : OleVariant;
begin
fsaveChanges := False;
wdDoc.Select;
wdApp.Selection.Select;
wdApp.Selection.Text := "Здравствуй, Юра, Новый Гоd!";
wdDoc.CheckGrammar;
wdDoc.Close(fsaveChanges);
wdApp.Disconnect;
end;
И все.
← →
DrPass © (2007-01-04 01:09) [2]Имхо, разумнее скачать с Torry компонентину TSpellChecker, которая пользуется вордовским спеллчекером напрямую, без необходимости запуска Ворда. И вообще без необходимости иметь его на компьютере, ей достаточно лишь самой библиотеки спеллчекера и словарика для нужного языка
← →
vlad-mal © (2007-01-04 15:00) [3]Конечно, лучше. :)
Однако, что чел хотел - то и получил.
← →
AlexanderMS © (2007-01-04 16:16) [4]Большое спасибо!
Такой роскоши, как TSpellChecker, мне не нужно (скачал, посмотрел, куча модулей, компоненты всякие).
Вариант [1] устраивает с исключением:
Как понять, что в слове ошибка?!
Попробую так :CheckGrammar(SomeWord);
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.01.21;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.043 c