COM MS WORD

t3[0one]

Новичок
COM MS WORD

мучаю объективную модель ворда по средствам Jscript
PHP:
function checkTexta(){
        texta = document.getElementById('texts').value;
        var word = new ActiveXObject("Word.Application");
        word.Documents.Add();
        word.Visible = true;
        word.Activate();        
        word.Selection.TypeText(texta);
        word.ActiveDocument.CheckGrammar();
}
Открывается ворд и если в тексте есть ошибка орфографические ,запускается отладчик руского языка =))
Очень много эксперементировал, но не получилось добится нужного результата (
Если в тексте есть ошибка мне нужно что бы появлялся только отладчик, а вся остальная часть спрятана.

-~{}~ 27.10.05 04:56:

Вот нарыл кое что !))
html
Код:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style>
TEXTAREA 
{
 behavior:url(useword.htc); 
}
</style>
</head>

<body>
<textarea name="blabla" cols="50" rows="10"></textarea>
</body>
</html>
useword.htc
Код:
<PUBLIC:ATTACH EVENT="onkeydown" ONEVENT="DoKeyDown()" />
<SCRIPT LANGUAGE="JScript">

    function DoKeyDown()
    {
        var keyCodeF7 = 118;
        var keyCodeF8 = 119;
        if (window.event.keyCode == keyCodeF7)
        {
            DoSpellCheck();
        }
        else if (window.event.keyCode == keyCodeF8)
        {
            DoFindReplace();
        }
    }
    
    function DoFindReplace()
    {
        var wdDialogEditReplace = 117;
        ShowWordDialog(wdDialogEditReplace);
    }

    function DoSpellCheck()
    {
        var wdDialogToolsSpellingAndGrammar = 828;
        ShowWordDialog(wdDialogToolsSpellingAndGrammar);
    }

    function ShowWordDialog(dialogIndex)
    {
        var wordApp = new ActiveXObject("Word.Application");
        if (wordApp == null)
        {
            alert("Unable to launch Microsoft Word");
            return;
        }
        var wdDialogToolsSpellingAndGrammar = 828;
        var wdDoNotSaveChanges = 0;
        var wordDoc = wordApp.Documents.Add();
        wordApp.Selection.Text = element.innerText;
        wordApp.Visible = true;
        wordApp.Activate();
        wordApp.Dialogs(dialogIndex).Show();
        // element.innerText = wordApp.Selection.Text;
        element.innerText = wordDoc.Content;
        wordDoc.Close(wdDoNotSaveChanges);
        wordApp.Visible = false;
        wordApp.Quit();
    }
</SCRIPT>
При нажатии на f7 проверка на систаксис теста в textarea, f8 найти заменить.
Фактически что нужно но открывается все равно весь ворд. =) эксперементировал -эксперементировал либо эроры либо вообще ничего +)как бы спрятать весь ворд кроме отладчика русского языка )))
 

Paxan

Новичёк
Тут выбор небольшой. Или ворд полностью открывается или юзать что-нибудь подобное (это пример просто):
Код:
    function ShowWordDialog(dialogIndex)
    {
        var wordApp = new ActiveXObject("Word.Application");
        if (wordApp == null)
        {
            alert("Unable to launch Microsoft Word");
            return;
        }
	objDocument = wordApp.Documents.Add();
	objDocument.Content = element.innerText;
	NumberOfWords = objDocument.Words.Count;
	for (i=1;i<(NumberOfWords);i++) {
		if (objDocument.Words(i).GetSpellingSuggestions().count > 0) {
			alert(objDocument.Words(i).Text + ": suggestions");
			for (k=1;k<objDocument.Words(i).GetSpellingSuggestions().count;k++) {
		 		alert(objDocument.Words(i).GetSpellingSuggestions().Item(k).Name);
			}
		} else alert(objDocument.Words(i).Text + ": no suggestions");
	}
	objDocument.Close(0);
        wordApp.Quit();
}
 

t3[0one]

Новичок
то есть значит нету не каких атрибутов , всмысле констант каторые отвичают за внешний вид ?

-~{}~ 27.10.05 06:59:

в битрикс кмс там все гут , именно что надо !+)))



-~{}~ 28.10.05 23:01:

проблему решил . Если кому интересно http://forum.dklab.ru/js/other/ProverkaOrfografiiSPomoshchyuMsWordIJs.html
 
Битрик - это вообще шикарная система, а главное они после покупки системы высылают сам код, который можно изучать и править... да и техподдержка у них очень обширная, могут помочь даже в написании нужных скриптов
 
Сверху