[R] Problème avec une fonction inventé

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
guitarist
Niveau 6
Niveau 6
Messages : 235
Enregistré le : mar. 02 déc. 2008 16:59
Status : Hors ligne

[R] Problème avec une fonction inventé

#1

Message par guitarist »

Bonjour voila j'ai repris une fonction qu'a créé Tlem et je l'utilise, la voici :
► Afficher le texte
Le problème c'est que lorsque je dit à ma GUI de lancer in ternet il lance in ternet et ferme la GUI en disant :
Subscript used with non-Array variable.:
$x = $pos[0]
$x = $pos^ ERROR
Merci de vos réponse pour me sortir de là

Voila le reste du code :
► Afficher le texte
Son but est de pouvoir lancer les differantes pages du forum.
Modifié en dernier par guitarist le dim. 11 oct. 2009 14:43, modifié 2 fois.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11798
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Problème avec une fonction inventé

#2

Message par Tlem »

A première vue, je dirais que vous avez omis de donner tous les paramètres, ou tout au moins qu'ils ne sont pas bon.

Dans la fonction, la commande WinGetPos($guinom) récupère les coordonnées de la fenêtre ayant pour control ID : $guinom
Donc si cette GUI n'existe pas ou n'est pas visible, le reste de la fonction ne peut pas fonctionner.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11798
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Problème avec une fonction inventé

#3

Message par Tlem »

Mon message est-il transparent ?
Re-lisez le bien.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
guitarist
Niveau 6
Niveau 6
Messages : 235
Enregistré le : mar. 02 déc. 2008 16:59
Status : Hors ligne

Re: [..] Problème avec une fonction inventé

#4

Message par guitarist »

Si ce que je copren est ce que tu a marquer Tlem c'est vrai que lorsqueon lance google et bien la gui est en-dessous de la fenetre de google donc n'est plu visible mais alor comment faire pour ne as avoir ce prob de la fonction qui continu : il faudrai pourvoir l'arretersi il y a une erreur.
Faudrait-il utiliser la datatype du style @error?
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11798
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Problème avec une fonction inventé

#5

Message par Tlem »

Qu'est-ce que vous ne comprenez pas dans :
Tlem a écrit :la commande WinGetPos($guinom) récupère les coordonnées de la fenêtre ayant pour control ID : $guinom
:roll:
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
guitarist
Niveau 6
Niveau 6
Messages : 235
Enregistré le : mar. 02 déc. 2008 16:59
Status : Hors ligne

Re: [..] Problème avec une fonction inventé

#6

Message par guitarist »

Je l'ai comprise la fonction !!!!!
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11798
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Problème avec une fonction inventé

#7

Message par Tlem »

:shock: Ah bon !!!

Ce n'est pas ce que je vois dans votre code.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
ani
Niveau 11
Niveau 11
Messages : 1826
Enregistré le : lun. 23 juil. 2007 12:31
Localisation : Bureau
Status : Hors ligne

Re: [..] Problème avec une fonction inventé

#8

Message par ani »

_tooltip (350,500,150,250,"Cliquez pour lancer Google","SAE")
vous devez indiquer le nom de la variable de votre interface, vous l'avez nommé $Form1
_tooltip (350,500,150,250,"Cliquez pour lancer Google",$Form1)

ensuite, vous faite appel a divers commandes avec un switch...endswitch et d'un select...endselect, retirez la formules du switch.

remplacer cà

Code : Tout sélectionner

    Switch $nMsg
    Case $GUI_EVENT_CLOSE
            Exit
    
    EndSwitch
        
Select
Par

Code : Tout sélectionner

Select
    Case $nMsg = $GUI_EVENT_CLOSE
            Exit
bonne continuation ;)
guitarist
Niveau 6
Niveau 6
Messages : 235
Enregistré le : mar. 02 déc. 2008 16:59
Status : Hors ligne

Re: [..] Problème avec une fonction inventé

#9

Message par guitarist »

J'ai fait les modifications mais le probleme est tjr là : lorsque je clique sur l'image pour lancer google la gui se ferm en laissant le massage d'erreur que j'ai afficher sur mon premier post

Voila la derniere version de ma GUI :
► Afficher le texte
guitarist
Niveau 6
Niveau 6
Messages : 235
Enregistré le : mar. 02 déc. 2008 16:59
Status : Hors ligne

Re: [..] Problème avec une fonction inventé

#10

Message par guitarist »

Je croi que vous avez mal compris mon prob :

Mon probleme ne vient pas de WinGetPos

Mon probleme vient de la :

Code : Tout sélectionner

$pos = GUIGetCursorInfo ()
$x = $pos[0]
$y = $pos[1]
ET une fois google lancer mon script se ferme et me dit :

Code : Tout sélectionner

F:\SAE.au3 (97) : ==> Subscript used with non-Array variable.:
$x = $pos[0]
$x = $pos^ ERROR
guitarist
Niveau 6
Niveau 6
Messages : 235
Enregistré le : mar. 02 déc. 2008 16:59
Status : Hors ligne

Re: [R] Problème avec une fonction inventé

#11

Message par guitarist »

En cherhcant bien j'ai trouver la solution !!!!
► Afficher le texte
Il fallait rajouter l'option "$Form1" sur la fonction GuiGetCursorInfo !!!

Soit :

Code : Tout sélectionner

$pos = GUIGetCursorInfo ($Form1)
Avatar du membre
sylvanie
Niveau 11
Niveau 11
Messages : 1556
Enregistré le : jeu. 26 juil. 2007 21:31
Localisation : Paris
Status : Hors ligne

Re: [R] Problème avec une fonction inventé

#12

Message par sylvanie »

Bonsoir,
C'est très bien d'avoir trouvé, mais une fois de plus je remarque (ceci est vrai pour beaucoups) qu'on ne s'assure pas que la fonction se soit bien passée.
En effet, ici par manque de précision de paramètre, on sortait en échec, et le soucis, et qu'on ne traîte pas le cas "erreur". Du coups on a un script qui "marche bien" si tout va bien, et qui peut retomber dans l'horrible erreur mensionnée si on n'est pas dans les bonnes conditions.
Il faut penser à tester @error ou le type de retours avant d'enchaîner les actions, pour éviter les scripts qui tournent en eau de boudin quand on n'est pas dans les bonnes conditions.
Bon j'arrête de radoter, et je vais prendre mes pilules '^^
Toi qui cherche à mettre le doigt sur la solution, appuie sur F1.
Répondre