|
|
Âåðîÿòíî, äëÿ ìíîãèõ ïîëüçîâàòåëåé ïðîãðàììû JAWS íå ÿâëÿåòñÿ ñåêðåòîì òîò ôàêò, ÷òî ñóùåñòâóåò öåëûé êëàññ ïðèëîæåíèé, ñ êîèìè JAWS âçàèìîäåéñòâóåò, èñïîëüçóÿ òåõíîëîãèþ COM (à òî÷íåå, òåõíîëîãèþ OLE Automation). Ïðèìåðàìè òàêèõ ïðèëîæåíèé ÿâëÿþòñÿ Microsoft Internet Explorer™ , Microsoft Word™ è äðóãèå ïðîãðàììû, âõîäÿùèå â ïàêåò MS Office™ . Âçàèìîäåéñòâóÿ ñ ýòèìè ïðèëîæåíèÿìè, JAWS íå "÷èòàåò" èíôîðìàöèþ ñ ýêðàíà, à îáðàùàåòñÿ çà íåé íàïðÿìóþ ê ïðèëîæåíèþ. Ïðè ýòîì ïðèëîæåíèå âûñòóïàåò â êà÷åñòâå COM-ñåðâåðà, à JAWS -- â êà÷åñòâå COM-êëèåíòà. Èñïîëüçóÿ ñïåöèàëüíûé èíòåðôåéñ, JAWS ïîëó÷àåò äîñòóï ê ñâîéñòâàì è ìåòîäàì COM-ñåðâåðà è ìîæåò óïðàâëÿòü èì. Áëàãîäàðÿ òàêîìó ìåõàíèçìó, ðàáîòàÿ ñ Microsoft Internet Explorer, ïîëüçîâàòåëü JAWS ìîæåò ïðîñìîòðåòü ñïèñêè âñåõ ññûëîê, âñåõ ôðåéìîâ è âñåõ çàãîëîâêîâ íà web-ñòðàíè÷êå Êñòàòè, ðÿäîâîé ïîëüçîâàòåëü Microsoft Internet Explorer, íå èìåþùèé ïðîãðàììû JAWS, òàêèå ñïèñêè ïîëó÷èòü íå ìîæåò. Êàêàÿ æå ïîëüçà îò âñåãî ýòîãî? Äåëî â òîì, ÷òî ðàçðàáîò÷èêè JAWS íå òîëüêî ñàìè âîñïîëüçîâàëèñü COM-òåõíîëîãèåé, íî è âñòðîèëè ïîääåðæêó COM-îáúåêòîâ â ÿçûê ñöåíàðèåâ JAWS. Äëÿ ýòîãî îíè ââåëè ñïåöèàëüíûé òèï ïåðåìåííîé --
Òåïåðü ïîïðîáóåì èçâëå÷ü èç âñåãî ñêàçàííîãî õîòü êàêóþ-íèáóäü âûãîäó. Ïðåäñòàâèì òàêóþ ñèòóàöèþ, êîãäà â îáû÷íîì òåêñòîâîì ôàéëå ïîëüçîâàòåëþ âñòðå÷àåòñÿ ñûëêà íà web-ñòðàíè÷êó èëè àäðåñ ýëåêòðîííîé ïî÷òû. Åñëè ïîëüçîâàòåëü æåëàåò ïî ýòîé ññûëêå ïåðåéòè íà ñòðàíè÷êó, òî îí äîëæåí çàãðóçèòü, íàïðèìåð, Microsoft Internet Explorer è ñêîïèðîâàòü ññûëêó â ñòðîêó àäðåñà. Ñ îòïðàâêîé ïèñüìà âîçíè áóäåò åù¸ áîëüøå - íàäî çàãðóçèòü ïî÷òîâóþ ïðîãðàììó, ñîçäàòü íîâîå ïèñüìî è ñêîïèðîâàòü íóæíûé àäðåñ â ïîëå "Êîìó". Î÷åâèäíî, ÷òî âñ¸ ýòî íóæäàåòñÿ â íåêîòîðîì
óïðîùåíèè. Çäåñü êàê ðàç è ïðèãîäÿòñÿ ñïîñîáíîñòè JAWS ðàáîòàòü ñ COM-îáúåêòàìè. Ñäåëàåì òàê, ÷òîáû ìîæíî áûëî âûäåëèòü â òåêñòå ññûëêó è ñðàçó æå ïåðåéòè ïî íåé íà web-ñòðàíè÷êó. Åñëè æå ýòî îêàæåòñÿ ïî÷òîâûé àäðåñ, òî ïóñòü çàãðóçèòñÿ äèàëîã äëÿ ñîçäàíèÿ íîâîãî ïèñüìà, â êîòîðîì óæå áóäåò ñòîÿòü íóæíûé àäðåñ â ïîëå "Êîìó".  ñëó÷àå, êîãäà âûäåëåííûé òåêñò íå ÿâëÿåòñÿ íè ññûëêîé, íè àäðåñîì ýëåêòðîííîé ïî÷òû, äîëæåí çàãðóæàòüñÿ äèàëîã äëÿ ñîçäàíèÿ íîâîãî ïèñüìà, â òåëî êîòîðîãî óæå ïîìåù¸í âûäåëåííûé òåêñò. Ïîíàäîáèòñÿ æå äëÿ âîïëîùåíèÿ çàäóìàííîãî âñåãî ëèøü îäèí COM-îáúåêò: Äàáû íå ïåðåãðóæàòü ñòàòüþ îòñòóïëåíèÿìè îò îñíîâíîé òåìû, âíîâü îòñûëàåì ïîëüçîâàòåëÿ ê ðóêîâîäñòâó ïî ïðîãðàììèðîâàíèþ íà ÿçûêå ñöåíàðèåâ JAWS, ãäå ïîäðîáíî ðàññêàçàíî, ÷òî è â êàêîé ïîñëåäîâàòåëüíîñòè íàäî äåëàòü, ÷òîáû ñîçäàòü íîâûé ñêðèïò. Íàïîìíèì ëèøü, ÷òî ïðîñòîå êîïèðîâàíèå ñêðèïòà èç ýòîé ñòàòüè â ôàéë Ëèñòèíã ñêðèïòà (äëÿ JAWS 4.5):
Script GoToURL()
Var
String str,
Object o
;ïîëó÷àåì âûäåëåííûé òåêñò
Let str =GetSelectedText ()
;èíèöèàëèçèðóåì íóæíûé COM-îáúåêò
Let o = CreateObject ("InternetExplorer.Application")
;ïðîâåðÿåì, íà÷èíàåòñÿ ëè âûäåëåííûé òåêñò ñ http://
If StringContains (str, "http://")==1 Then
Say("Çàãðóæàåòñÿ ñòðàíè÷êà ïî àäðåñó: "+str, OT_MESSAGE)
o.Navigate(str);
Let o.Visible=true;
;ïðîâåðÿåì, ÿâëÿåòñÿ ëè âûäåëåííûé òåêñò ïî÷òîâûì àäðåñîì
Elif StringContains (str, "@") Then
Say("Ïî÷òîâàÿ ññûëêà: " + str,OT_MESSAGE)
o.Navigate("MailTo: "+str);
;â ïðîòèâíîì ñëó÷àå - èñïîëüçóåì âûäåëåííûé òåêñò â êà÷åñòâå òåêñòà äëÿ ïèñüìà
Else
Say("Ñîçäàåòñÿ ÷åðíîâèê ïèñüìà",OT_MESSAGE)
o.Navigate("MailTo: ?body="+str);
EndIf
EndScript
Äëÿ ðàáîòû ýòîãî ñêðèïòà ñëåäóåò â òåêñòå âûäåëèòü íóæíóþ ññûëêó èëè ïî÷òîâûé àäðåñ è íàæàòü êîìáèíàöèþ êëàâèø, àññîöèèðîâàííóþ ñ ýòèì ñêðèïòîì. Íåáîëüøîé êîììåíòàðèé äëÿ òåõ, êòî óæå ñòàëêèâàëñÿ ñ ïðîãðàììèðîâàíèåì COM-îáúåêòîâ. Ðàçóìååòñÿ, ìîæíî áûëî âîñïîëüçîâàòüñÿ åù¸ îäíèì COM-îáúåêòîì äëÿ ñîçäàíèÿ ïèñåì, èíûìè ñëîâàìè, âûçâàòü |
|||||||||
|
Ðàñïðîñòðàíåíèå ìàòåðèàëîâ ñàéòà îçíà÷àåò, ÷òî ðàñïðîñòðàíèòåëü ïðèíÿë óñëîâèÿ ëèöåíçèîííîãî ñîãëàøåíèÿ. Èäåÿ è ðåàëèçàöèÿ: © Âëàäèìèð Äîâûäåíêîâ è Àíàòîëèé Êàìûíèí, 2004-2026 | ||||||||||
Ñîöèàëüíûå ñåòè