[TUTO SIOC] Simuler une touche de clavier ou une fonction

Tous les tutoriels sur la programmation SIOC, le language des cartes Opencockpits

[TUTO SIOC] Simuler une touche de clavier ou une fonction

Messagede mameloose » Jeu 9 Avr 2015 12:54

eh bien le bonjour !

aujourdhui comment simuler une touche de clavier avec un bouton ou bien une action dans FS

il existe dans le sdk quelques variables qui permettent de simuler jusqu'a 9 joystick comprenant chacun 32 boutons !

ce qui veut dire qu'il est possible au total de simuler 288 touches !!! eh oui

petite mise en pratique

ici dans le sdk le premier joystick virtuel est l'offset $3340 de longueur 4

Image

pour pouvoir controller cette variable il suffit d'utiliser la fonction SETBIT et CLEARBIT pour chaque bouton

a savoir que le premier bouton commence au bit 0

1- declarer la variable et un bouton

comme precedement j'ouvre un code vierge et EDIT NEWVAR

Image

Image

Image

ok on a deja vu tout ca avant ; la variable du joy est declarée et j'ai mis un simple bouton sur l'entrée n°5 de la master

2- definir le role du bouton !

dans cet exemple je vais utiliser le bouton n°5 de notre joystick virtuel (donc le bit n°4)

clic droit sur le bouton et NEWCOMMANDE

Image

comme on a vu precedement fonction IF (si mon interr est fermé =1)

reclic droit et NEWCOMMAND

Image

alors je simule le bit 4 pour le joystick

et maintenant le contraire fonction ELSE donc clic droit sur LE BOUTON ET NEW COMMANDE

Image

Image

Image

VOILA !! a partir de la on se dit c'est fini ! eh ben non lol

notre bouton active un des bits du joystick mais maintenant je veux par exemple simuler la touche P

une fois notre code operationnel je lance FlightSimulator ou P3D et j'ouvre FSUIPC version enregistré biensur ;)
jusque sur la page BOUTONS+SWITCH (noubliez pas de lancer sioc egalement)

ca se presente comme ca

Image

ATTENTION si vous voulez que cette touche soit specifique a un seul avion il faut choisir l'avion voulut puis cocher la case AIRCRAFTSPECIFIC

ensuite nous allons appuyer sur notre bouton cablé sur la master et il se passe ca :

Image

voila FSUIPC a detecté lappui de notre bouton sur le bit 4 maintenant attribution du bit pour appuyer sur la touche P

COCHER LA CASE SELECT FOR KEY PRESS puis SET dans la premiere case et appuyez sur la touche P de votre clavier

Image

et voila noubliez pas de faire ok pour valider tout ca

desormais a chaque impulsion du bouton on simulera la touche P ducoup d'origine FS se mettera en pause forcement !!

mais ce n'est pas tout

LA CASE KEY PRESS NOT TO BE HELD ca veut dire que quand jappuie sur mon bouton la touche P ne sera pas maintenue donc ca sera juste une impulsion P comme le doigt sur le clavier mais qui ne reste pas appuyé.

LA CASE KEY PRESS TO REPEAT c'est le contraire la touche sera repeté tant que notre bouton sera sur ON

donc en gros ca fera PPPPPPPPPPPPPPPPPPPPPPPP

vous remarquerez egalement un autre case pour SET celle la demande l'action a faire quand le bouton est RELACHé

ici on ne met rien parce que sinon quand j'active linterrupteur je simule la touche P et quand je le relache il le refera de nouveau

on peut egalement mettre une autre touche au moment du relachement comme par exempe la touche SHIFT+L

Image

et pour finir si ce n'est pas une touche de clavier mais une fonction de FS il suffit d'utiliser le tableau de droite en cliquant dans la case SELECT FOR FS CONTROL

Image

et de choisir dans toute la liste deroulante l'action voulut comme par exemple l'enclenchement du pilote auto ou bien allumer les phares d'attero

tout est possible cette fonction est très pratique pour depanner si vous ne pouvez pas faire votre code sioc avec certains avions specifique comme le 747 de pmdg par exemple .....
Avatar de l’utilisateur
mameloose
 
Messages: 1006
Inscription: 20/04/09
Localisation: evreux

Re: tuto sioc simuler une touche de clavier ou une fonction

Messagede jehanlucques » Jeu 9 Avr 2015 13:51

Bonjour.
Un grand merci pour ce tuto qui permet en outre de pouvoir utiliser les cartes comme celle de Leo Bodnar.

Bravo pour ces explications minutieuses et détaillées. applaublanc

merci affiche

Jean-Luc
Avatar de l’utilisateur
jehanlucques
 
Messages: 158
Inscription: 28/11/09
Localisation: Le Perreux sur Marne

Re: tuto sioc simuler une touche de clavier ou une fonction

Messagede mameloose » Jeu 9 Avr 2015 14:08

merci

je ne connais pas du tout les cartes bodnar je ne pensai pas que c'etait le meme principe
Avatar de l’utilisateur
mameloose
 
Messages: 1006
Inscription: 20/04/09
Localisation: evreux

Re: tuto sioc simuler une touche de clavier ou une fonction

Messagede IPSAFlight777 » Mar 14 Avr 2015 21:23

Bonsoir Mameloose,

Merci pour ce très bon tuto.

Juste une question, comment on fait pour sélectionner la fenêtre sur laquelle on va simuler la touche de clavier?

Je m'explique, on a plusieurs logiciels ouverts sur un ordinateurs et plus d'un sont actifs. Je voudrais simuler la touche "A" par exemple, j'utilise le programme ci-dessus, mais comment faire pour que ça le simule sur un logiciel ou fenêtre spécifique et pas une autre?

Merci,

Amicalement,

Edwin, IPSA Flight
Avatar de l’utilisateur
IPSAFlight777
 
Messages: 34
Inscription: 16/11/14
Localisation: Ivry-Sur-Seine

Re: tuto sioc simuler une touche de clavier ou une fonction

Messagede mameloose » Mer 15 Avr 2015 11:39

Hello
Oui alors c'est une autre façon de faire c'est encore plus simple je ferai un tutoriel ce soir en rentrant du taf
Avatar de l’utilisateur
mameloose
 
Messages: 1006
Inscription: 20/04/09
Localisation: evreux


Re: tuto sioc simuler une touche de clavier ou une fonction

Messagede cgoa-benoit » Lun 6 Juil 2015 10:17

Bonjour

Yes, bouton starter chekc...Ok
Image
Image
Image
Avatar de l’utilisateur
cgoa-benoit
 
Messages: 633
Inscription: 3/07/10
Localisation: La Rochelle

Re: tuto sioc simuler une touche de clavier ou une fonction

Messagede mameloose » Lun 6 Juil 2015 10:45

Cool !!
Avatar de l’utilisateur
mameloose
 
Messages: 1006
Inscription: 20/04/09
Localisation: evreux


Retourner vers Les TUTOS SIOC





Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité