pourquoi alors le script suivant ne fonctionnne pas ?
Script essai ()

var object o

let o = getObject("freedomSCI.jawsapi")

if o then SayString ("oui") endif

?

?

EndScript

----- Original Message ----- 
From: "yannick" <philao...@yahoo.fr>
To: <progliste@ml.free.fr>
Sent: Wednesday, February 22, 2012 5:30 PM
Subject: [progliste] Re: comment exécuter du VBScript en jaws script


>
> slt, je n'ai pas  office, mais en lisant le code, toute mes félicitation !
> je n'ai jamais réussi à utiliser getObject (mes tests se sont fait dans
> skype )
> vraiement impressionnnant, si tu dois le faire évoluer, j'aiemerais bien 
> le
> consulter !
>
> ----- Original Message ----- 
> From: "Yannick Youalé" <mailtoloco2...@gmail.com>
> To: <progliste@ml.free.fr>
> Sent: Wednesday, February 22, 2012 5:08 PM
> Subject: [progliste] Re: comment exécuter du VBScript en jaws script
>
>
>>
>> Salut les mecs !
>>
>> Concernant ma mission qui était de trouver un moyen de rendre la fenêtre
>> mode création de formulaire de microsoft access plus accessible, les
>> choses
>> ont évolué assez étrangement pour moi.
>>
>> En effet, en me documentant sur la fonction GetObject, je me suis rendu
>> compte qu'il n'était pas nécessaire de passer par le VBScript pour 
>> arriver
>> à
>> mes fins.
>>
>> J'ai pû produire un script dans lequel je capte la reférence vers l'objet
>> représentant la base de donnée access actuellement ouverte.
>> Puis, par un cheminement plus ou moins ingénieux, j'arrive à trouver la
>> reférence vers l'objet du formulaire en mode création sur lequel se 
>> trouve
>> le focus. Ce qui me permet au final de pouvoir faire dire à jaws les
>> propriétés de cet objet qui, sont à l'origine inaccessibles.
>>
>> Les applications possibles de cette nouvelle possibilité:
>>
>> * pouvoir, comme cela se fait dans les concepteurs graphique de 
>> formulaire
>> du VB6, de word et d'excel, et qui se manipulent très bien par les
>> aveugles,
>> faire dire les changements dans les propriétés des objets en cours de
>> manipulation. Cela en temps réel
>> * pouvoir passer par jaws pour directement modifier les propriétés des
>> objets de formulaire. Comme par exemple: le name, le caption, le left, le
>> top, le width, le height.
>>
>> Ce qui, selon mes espérances, devrait grandement améliorer la facilité de
>> création de formulaire et des objets qui les compose.
>>
>> Je vous collerais le script de test en question plus bas pour que vous
>> voyiez mon cheminement. Mais avant, je dois vous avertir que je ne l'ai
>> pour
>> l'instant testé que dans office 2003, et que pour l'instant, vous devrez
>> sélectionner manuellement le premier objet du formulaire. Après que ce
>> soit
>> fait, vous pourrez vous déplacer aux autres objets avec tab et maj+tab.
>> Je rappelle que dans la fenêtre de création de formulaire, on sélectionne
>> un
>> objet en faisant:
>> alt,
>> ctrl+tab jusqu'à entendre "zone de liste déroulante objets",
>> puis flèche haut ou bas pour sélectionner l'objet désiré,
>> et on fait entrer.
>>
>> Le script fait dire le name, le left, et le top de l'objet du formulaire
>> actuellement sélectionné.
>> Bien entendu, ceci n'est qu'un script de test, mais qui contient les
>> éléments essentiels pour ce qu'il deviendra dans le futur.
>>
>> Voici le script:
>>
>> Script TestLectureControlModeCreationFormulaireAccess ()
>>
>> var
>>
>> handle hwnd,
>>
>> string s,
>>
>> object oAccess,
>>
>> object frm,
>>
>> object ctr,
>>
>> int i,
>>
>> int nb
>>
>> ; si on n'est pas sur un formulaire en mode création
>>
>> let hwnd = GetRealWindow (GetFocus ())
>>
>> if isFormDesignView() == false
>>
>> || GetWindowClass (hwnd) != "OForm"
>>
>> then
>>
>> return
>>
>> endif
>>
>> ; on identifie l'objet application access
>>
>> let oAccess = GetObject ("Access.Application")
>>
>> if ! oAccess then
>>
>> return
>>
>> EndIf
>>
>> ; identification du formulaire de travail actuellement ouvert en mode
>> création
>>
>> let nb = oAccess.Forms.Count ; le nombre de formulaires présent dans la 
>> BD
>> Access ouverte
>>
>> let i = 0 ; initialisation du compteur
>>
>> while (i <= nb)
>>
>> ; si le handle de la fenêtre réelle est identique à un des handle des
>> fenêtres de la BD
>>
>> if StringToHandle (oAccess.Forms(i).Hwnd) == hwnd then
>>
>> ; on reférencie le formulaireendscript
>>
>>
>>
>> let frm = oAccess.Forms(i)
>>
>> let i = nb ; on force la sortie de la boucle
>>
>> EndIf
>>
>> let i = i+1
>>
>> EndWhile
>>
>> ; pour que la suite fonctionne correctement, il faudrait
>>
>> ; qu'un control soit sélectionné dans le formulaire ouvert en mode
>> création.
>>
>> ;
>>
>> let ctr = frm.ActiveControl
>>
>> if ctr.Name == "" then ; aucun control sélectionné
>>
>> SayString ("Aucun control n'est sélectionné")
>>
>> SayString ("Pour pouvoir le faire, faite alt, puis ctrl+tab jusqu'à
>> entendre
>> 'zone de liste déroulante objets'. Utilisez les flèches de direction pour
>> sélectionner un objet et faites entrer")
>>
>> return
>>
>> EndIf
>>
>> ; lecture du name du control et des ses coordonnées left et top
>>
>> SayString (ctr.name)
>>
>> SayString (ctr.left)
>>
>> SayString (ctr.top)
>>
>> EndScript
>>
>>
>> Voila !
>> Lorsque j'aurais plus de temps, je me pencherais sur cette méthode pour
>> pouvoir l'améliorer.
>>
>> Puisse tout cela nous être utile.
>>
>> Yannick Daniel Youalé
>> La programmation est une religion. Aimez-la, ou quittez-la.
>>
>>
>> ----- Original Message ----- 
>> From: "yannick" <philao...@yahoo.fr>
>> To: <progliste@ml.free.fr>
>> Sent: Wednesday, February 22, 2012 6:38 AM
>> Subject: [progliste] Re: comment exécuter du VBScript en jaws script
>>
>>
>>>
>>> je ne sais pas détruire   l'objet, mais peut être  que la solution se
>>> trouve
>>> dans :
>>> http://dl.dropbox.com/u/5497034/envoie/scriptcontrol.VSNT
>>>
>>> sinon,  dans ton code tu n'utilise pas de méthode eval qui permet
>>> d'executer
>>> le code .
>>> de plus, je crois que l'on peut executer que des fonction créé par toi
>>> même
>>> donc , essaie de le mettre dans une procedure (pas sûr à 100% tes tests
>>> nous
>>> le confirmleront ou pas )
>>>
>>> ----- Original Message ----- 
>>> From: "Yannick Youalé" <mailtoloco2...@gmail.com>
>>> To: <progliste@ml.free.fr>
>>> Sent: Wednesday, February 22, 2012 4:47 AM
>>> Subject: [progliste] comment exécuter du VBScript en jaws script
>>>
>>>
>>>>
>>>> Salut à tous !
>>>>
>>>> Actuellement, j'essaie via les scripts jaws de donner plus
>>>> d'accessibilité
>>>> à microsoft access, notamment dans la fenêtre de formulaire en mode
>>>> création.
>>>>
>>>> Dans un autre projet, j'ai réussi à utiliser le VBScript pour donner 
>>>> des
>>>> informations, voir modifier les controls d'une fenêtre de formulaire
>>>> créée
>>>> en VB6. Je voudrais donc faire la même chose en VBA.
>>>>
>>>> Mais, jusqu'ici, en m'inspirant de l'exemple produit par Yannick dans
>>>> son
>>>> script pour notepad avec le langage python, je n'ai pas pu faire
>>>> exécuter
>>>> le moindre code VBScript.
>>>>
>>>> Voici ce que j'ai eu à confectionner comme code :
>>>>
>>>> Script TestVBScript ()
>>>> ; script de test du VBScript
>>>> var
>>>>
>>>> object scripting
>>>>
>>>> let scripting =CreateObjectEx ("MSScriptControl.ScriptControl", 0)
>>>>
>>>> let scripting.language ="VBScript"
>>>>
>>>> scripting.addCode ("MsgBox 'Bonjour tout le monde !'")
>>>>
>>>> EndScript
>>>>
>>>> Merci de me dire où se trouve l'erreur.
>>>>
>>>> Et par ailleurs, comment détruire à coup sûr un objet préalablement 
>>>> créé
>>>> ?
>>>>
>>>> Encore merci !
>>>>
>>>> Yannick Daniel Youalé
>>>> La programmation est une religion. Aimez-la, ou quittez-la.
>>>>
>>>> Progliste :
>>>> Pour se désinscrire de la liste :
>>>> mailto:progliste-requ...@ml.free.fr?subject=unsubscribe
>>>>
>>>> Pour voir les archives de la liste :
>>>> http://www.mail-archive.com/progliste@ml.free.fr/
>>>>
>>>> Pour accéder aux fichiers de la liste
>>>> http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr
>>>> Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en 
>>>> privé,
>>>> je vous répondrez en privé.
>>>
>>>
>>> Progliste :
>>> Pour se désinscrire de la liste :
>>> mailto:progliste-requ...@ml.free.fr?subject=unsubscribe
>>>
>>> Pour voir les archives de la liste :
>>> http://www.mail-archive.com/progliste@ml.free.fr/
>>>
>>> Pour accéder aux fichiers de la liste
>>> http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr
>>> Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en privé,
>>> je vous répondrez en privé.
>>>
>>
>>
>> Progliste :
>> Pour se désinscrire de la liste :
>> mailto:progliste-requ...@ml.free.fr?subject=unsubscribe
>>
>> Pour voir les archives de la liste :
>> http://www.mail-archive.com/progliste@ml.free.fr/
>>
>> Pour accéder aux fichiers de la liste
>> http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr
>> Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en privé,
>> je vous répondrez en privé.
>
>
> Progliste :
> Pour se désinscrire de la liste : 
> mailto:progliste-requ...@ml.free.fr?subject=unsubscribe
>
> Pour voir les archives de la liste :
> http://www.mail-archive.com/progliste@ml.free.fr/
>
> Pour accéder aux fichiers de la liste
> http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr
> Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en privé, 
> je vous répondrez en privé. 


Progliste :
Pour se désinscrire de la liste : 
mailto:progliste-requ...@ml.free.fr?subject=unsubscribe

Pour voir les archives de la liste :
http://www.mail-archive.com/progliste@ml.free.fr/       

Pour accéder aux fichiers de la liste
http://outils.archive-host.com/partage.php?id=2Qar9Hy6ftzr
Pour y ajouter des fichiers demandez-moi le ou sur la liste ou en privé, je 
vous répondrez en privé.

Répondre à