Sujet : onHold
Type : Script
Niveau : Débutant+
Durée : 00:03:04 (hh:mm:ss)
Date : 2010-01-25
Lien : http://www.rendufamily.fr/domotique/telecommandes/Tutoriaux/Scripts/009_onHold.avi
Détails :
* Gestion d'un appuye court
* Gestion d'un appuye long
* Gestion d'un relachement
* Permet d'exécuter plusieurs fois un scripts lorsque l'on reste appuyé sur une touche
Auteur : Jean-Michel Rendu
|
22 messages • Accèder à une page • 1, 2
|
Modérateurs: Modération Forum Installations, Modération Forum DIY, Le Bureau de l’Association HCFR • Utilisateurs parcourant ce forum: coucouse et 9 invités
Tout l'univers du pilotage et des télécommandes
[Tuto PEP2] : onHold
- powox
- Messages: 781
- Inscription Forum: 01 Oct 2005 1:38
- Localisation: Paris, Chatillon
Merci Jean-Michel,
encore un super tuto.
Et voilà!
Fred
encore un super tuto.
Et voilà!
Fred
- fredokl
- Messages: 471
- Inscription Forum: 06 Aoû 2009 1:36
- Localisation: Romans sur Isère
Merci bcp Jean-Michel encore super tuto!!!
Quel genre d'application peut on faire avec ce script?
Et voilà
Quel genre d'application peut on faire avec ce script?
Et voilà
- anthony64
- Pro-Divers
- Messages: 163
- Inscription Forum: 10 Fév 2009 19:55
- Localisation: Bayonne
bah disons que tu as un appareil RS232 (dvd, kaleidescape, etc) ou IP (media center, dee&bee, etc) ben tu passer par un script pour envoyer tes commandes (bon, en rs y'a une façon plus simple bien sur mais moins propre!)
alors, derrière ton bouton si tu met juste : maCommandeDVD("UP") ben elle ne sera exécuté qu'elle seule fois, même si tu laisse appuyé longtemps. Ce script permet de passer outre cette limite. Si tu laisse appuyé il enverra plusieurs fois maCommandeDVD("UP").
J'avoue que j'ai pas été trés clair dans le tuto
alors, derrière ton bouton si tu met juste : maCommandeDVD("UP") ben elle ne sera exécuté qu'elle seule fois, même si tu laisse appuyé longtemps. Ce script permet de passer outre cette limite. Si tu laisse appuyé il enverra plusieurs fois maCommandeDVD("UP").
J'avoue que j'ai pas été trés clair dans le tuto
- powox
- Messages: 781
- Inscription Forum: 01 Oct 2005 1:38
- Localisation: Paris, Chatillon
A ok je comprend.
Merci pour les infos, je suis en train de regarder ton nouveau tuto
Merci pour les infos, je suis en train de regarder ton nouveau tuto
- anthony64
- Pro-Divers
- Messages: 163
- Inscription Forum: 10 Fév 2009 19:55
- Localisation: Bayonne
bonjour,
tout d'abord, bravo pour le tuto qui est tres claire et fonctionnel, j'ai tout de meme un soucis car j'aimerai l'integrer dans une page et que plusieurs bouttons aient cette fonction, (pour les chaines de la freebox) le soucis c'est qu'un seul bouton n'accionne le scipt, y a t'il une astuce pour integrer le script a pluseurs bouton ?
merci encore
et bonne journée
tout d'abord, bravo pour le tuto qui est tres claire et fonctionnel, j'ai tout de meme un soucis car j'aimerai l'integrer dans une page et que plusieurs bouttons aient cette fonction, (pour les chaines de la freebox) le soucis c'est qu'un seul bouton n'accionne le scipt, y a t'il une astuce pour integrer le script a pluseurs bouton ?
merci encore
et bonne journée
- jdaillan
- Messages: 21
- Inscription Forum: 26 Fév 2010 12:56
Salut jdaillan,
tu peux créer d'autres boutons en utilisant le même script (il suffit de changer "w" par la lettre que tu veux.
Je pense qu'il y a une autre manière de rendre le script plus simple mais là je laisse la place aux experts.
J'ai testé ceci et ça fonctionne:
- tout d'abord créer un autre boutoon que tu appels "MY_BUTTON2",
- ensuite copie et colle le script si dessous dans la partie "advanced" de ta page.
w = GUI.widget("MY_BUTTON");
x = GUI.widget("MY_BUTTON2");
w.onPress=function(x,y)
{
this.compteur=0;
}
w.onHold=function()
{
this.compteur++;
this.label=this.compteur;
}
w.onHoldInterval =100;
w.onRelease=function()
{
GUI.alert(this.compteur);
}
x.onPress=function(x,y)
{
this.compteur="Tu peux mettre ton texte ici";
}
x.onHold=function()
{
this.compteur++;
this.label=this.compteur;
}
x.onHoldInterval =100;
x.onRelease=function()
{
GUI.alert(this.compteur);
}
Voilà, j'espère t'avoir aidé un peu,
Fred
tu peux créer d'autres boutons en utilisant le même script (il suffit de changer "w" par la lettre que tu veux.
Je pense qu'il y a une autre manière de rendre le script plus simple mais là je laisse la place aux experts.
J'ai testé ceci et ça fonctionne:
- tout d'abord créer un autre boutoon que tu appels "MY_BUTTON2",
- ensuite copie et colle le script si dessous dans la partie "advanced" de ta page.
w = GUI.widget("MY_BUTTON");
x = GUI.widget("MY_BUTTON2");
w.onPress=function(x,y)
{
this.compteur=0;
}
w.onHold=function()
{
this.compteur++;
this.label=this.compteur;
}
w.onHoldInterval =100;
w.onRelease=function()
{
GUI.alert(this.compteur);
}
x.onPress=function(x,y)
{
this.compteur="Tu peux mettre ton texte ici";
}
x.onHold=function()
{
this.compteur++;
this.label=this.compteur;
}
x.onHoldInterval =100;
x.onRelease=function()
{
GUI.alert(this.compteur);
}
Voilà, j'espère t'avoir aidé un peu,
Fred
- fredokl
- Messages: 471
- Inscription Forum: 06 Aoû 2009 1:36
- Localisation: Romans sur Isère
Bonjour et merci
si c'est pour des chaines, pourquoi ne pas simplement utiliser des actions plutôt que des scripts ? c'est encore plus simple. A moins que tu ais une contrainte technique, auquel cas, demande nous, avec un peu de chance on aura une solution
Il y a également un tuto pour les chaines de télé, vas y jeter un oeil
Sinon fred, tu as trés bien résumé
on ne peut pas vraiment faire plus simple, à la limite on peut remplacer x et w par des mots plus simple comme "tf1", "mtv", "play", "stop", etc...
Jean-Michel
si c'est pour des chaines, pourquoi ne pas simplement utiliser des actions plutôt que des scripts ? c'est encore plus simple. A moins que tu ais une contrainte technique, auquel cas, demande nous, avec un peu de chance on aura une solution
Il y a également un tuto pour les chaines de télé, vas y jeter un oeil
Sinon fred, tu as trés bien résumé
on ne peut pas vraiment faire plus simple, à la limite on peut remplacer x et w par des mots plus simple comme "tf1", "mtv", "play", "stop", etc...
Jean-Michel
- powox
- Messages: 781
- Inscription Forum: 01 Oct 2005 1:38
- Localisation: Paris, Chatillon
ah oui, je pense avoir compris.
satané freebox
pour les chaines >10 faut faire des pressions longues, c'est ça ton soucis ?
si oui, y'a une autre solution
tu learn les touches en version "longue" et aprés tu fais de simples "actions"
je fais comme ça au travail, j'ai learné les codes Infra-Rouge de la freebox dans la version "longue"
Jean-Michel
satané freebox
pour les chaines >10 faut faire des pressions longues, c'est ça ton soucis ?
si oui, y'a une autre solution
tu learn les touches en version "longue" et aprés tu fais de simples "actions"
je fais comme ça au travail, j'ai learné les codes Infra-Rouge de la freebox dans la version "longue"
Jean-Michel
- powox
- Messages: 781
- Inscription Forum: 01 Oct 2005 1:38
- Localisation: Paris, Chatillon
Bah en fait c'etait pour la freebox, sur le pavé numerique, de 0 a 9 un appui court envoi la chaine de 0 à 9 mais au dela il faut faire un appui long par ex nrj12: appui long sur le 1 et appui court sur le 2..
merci encore à vous deux car je débute sur les scripts et vous m'avez étés d'une aide précieuse!
merci encore à vous deux car je débute sur les scripts et vous m'avez étés d'une aide précieuse!
Dernière édition par jdaillan le 26 Fév 2010 14:11, édité 1 fois.
- jdaillan
- Messages: 21
- Inscription Forum: 26 Fév 2010 12:56
Alors, une action c'est juste le fait de mettre un code InfraRouge sur un bouton (c'est l'utilisation la plus classique). Tu as l'onglet "Actions" sur la droite.
Moi ce que je te conseille c'est de learner les codes infrarouge de la télécommande en version "appuye long", tu pourra alors juste faire "12" ça enverra donc le 1 en version appuye long et 2 en version appuye long ce qui n'est pas génant ça fonctionne. Au pire ça prend 1 seconde de plus parce la freebox attend un autre chiffre, mais ensuite elle va sur la 12.
Si vraiment tu veux une réaction rapide, tu learn 2 fois. Une fois en version longue et une fois en version courte. Mais tu perd en rapidité de programmation car pour les chaines, c'est simple, tu prends une "macro channel" et non une "action", et tu met le numéro "12", "118", etc...
Jean-Michel
Moi ce que je te conseille c'est de learner les codes infrarouge de la télécommande en version "appuye long", tu pourra alors juste faire "12" ça enverra donc le 1 en version appuye long et 2 en version appuye long ce qui n'est pas génant ça fonctionne. Au pire ça prend 1 seconde de plus parce la freebox attend un autre chiffre, mais ensuite elle va sur la 12.
Si vraiment tu veux une réaction rapide, tu learn 2 fois. Une fois en version longue et une fois en version courte. Mais tu perd en rapidité de programmation car pour les chaines, c'est simple, tu prends une "macro channel" et non une "action", et tu met le numéro "12", "118", etc...
Jean-Michel
- powox
- Messages: 781
- Inscription Forum: 01 Oct 2005 1:38
- Localisation: Paris, Chatillon
Ah oui, mais en fait au niveau des actions c'etait bon, pas de pb, mon pb était au niveau du pavé numérique, mais vous avez ts deux repondu à mon pb, alors encore merci je me coucherai moins bête ce soir
et encore bravo pour tous ces tuto clairs efficaces !
et encore bravo pour tous ces tuto clairs efficaces !
- jdaillan
- Messages: 21
- Inscription Forum: 26 Fév 2010 12:56
Bonjour Jean Michel,
je ne voudrai pas abuser mais aurai tu s'il te plais les code IR des chiffres de 0 à 9 en appui long sur la freebox HD car je ne les trouve pas sur internet
merci d'avance
je ne voudrai pas abuser mais aurai tu s'il te plais les code IR des chiffres de 0 à 9 en appui long sur la freebox HD car je ne les trouve pas sur internet
merci d'avance
- jdaillan
- Messages: 21
- Inscription Forum: 26 Fév 2010 12:56
heu, oui, je te donne ça sous forme hexa attend...
- powox
- Messages: 781
- Inscription Forum: 01 Oct 2005 1:38
- Localisation: Paris, Chatillon
|
22 messages
• Page 1 sur 2 • 1, 2
Retourner vers Pilotage et Télécommandes
|