Comment ouvrir une page web en soulevant un objet posé sur un microrupteur
coolidge
Messages postés5Date d'inscriptionlundi 27 novembre 2006StatutMembreDernière intervention31 mars 2008
-
27 mars 2008 à 16:44
coolidge
Messages postés5Date d'inscriptionlundi 27 novembre 2006StatutMembreDernière intervention31 mars 2008
-
31 mars 2008 à 09:02
Bonjour,
J'ai réalisé une application (jeux pour enfants) à partir d'un logiciel de création de site web.
Pour rendre ludique ce jeu je voudrais qu'en soulevant un objet posé sur microrupteur (contacteur qui peut être connecté à la DB15 du PC) cela déclenche l'ouverture d'une page web.
Il y aurait 4 objets qui chacun déclencherait une page web différente.
Ma question : est-ce possible ?
si oui avec merci de me donner quelques pistes pour démarrer
A voir également:
Comment ouvrir une page web en soulevant un objet posé sur un microrupteur
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 27 mars 2008 à 21:48
Salut
Oui, tout est possible.
La question est : où en es-tu ?
Lancer l'affichage d'une page Web ?
Détecter un contact ?
DB15 : connais pô
Il faudrait savoir à quoi correspond ce connecteur.
DB9/DB25 (port série) : tu peux essayer d'utiliser les signaux logiques genre RTS, CTS ...
Sinon, il y a aussi le connecteur parallèle ou encore un des contacts d'un clic souris
Il va falloir te renseigner sur ces interfaces ...
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
coolidge
Messages postés5Date d'inscriptionlundi 27 novembre 2006StatutMembreDernière intervention31 mars 2008 28 mars 2008 à 16:48
Bonjour
C'est exact c'est le DB15 du port jeux.
L'intérêt que je voyais est d'une part il peut commander les 4 entrées / sorties nécessaire et d'autre part un seul DB15 peut être connecté aux 4 microrupteurs
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 29 mars 2008 à 01:27
Ok
Hors mis le côté bricolage que tu peux facilement réaliser en achetant et bricolant une game-pad USB à 7 euros, ton vrai soucis est "Comment récupérer les états des boutons poussoirs d'une game-pad"
Je n'ai pas la réponse.
Fais des recherches là dessus et reviens poser cette question dans le forum si tu ne trouves pas
Quand tu auras trouvé la solution et mis en application ton projet, j'espère que nous fera l'honneur de poster ta source.
Ce genre de sujet n'est pas fréquent et, je trouve, intéressant.
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 29 mars 2008 à 01:50
Re
Je viens de faire une petite recherche et ... il existe des APIs pour questionner les gamepad et retourner, entree autre, la position des boutons.
J'ai fait l'essai avec ma gamepad qui a plein de boutons et ça marche très bien, suffira de décoder du binaire (nouveau challenge !)
Essaye ça qui est extrait modifié de API-Guide, un guide avec des exemples en VB6 de l'utilisation des APIs Windows (XP, pas Vista), API-Guide, gratuit par ce http://logiciel.codes-sources.com/logiciels/API-Guide-197.aspx
Private Type JOYINFO
X As Long
Y As Long
Z As Long
Buttons As Long
End Type
Private Type JOYCAPS
wMid As Integer
wPid As Integer
szPname As String * MAXPNAMELEN
wXmin As Long
wXmax As Long
wYmin As Long
wYmax As Long
wZmin As Long
wZmax As Long
wNumButtons As Long
wPeriodMin As Long
wPeriodMax As Long
End Type
Private Declare Function joyGetDevCaps Lib "winmm.dll" Alias "joyGetDevCapsA" (ByVal id As Long, lpCaps As JOYCAPS, ByVal uSize As Long) As Long
Private Declare Function joyGetNumDevs Lib "winmm.dll" () As Long
Private Declare Function joyGetPos Lib "winmm.dll" (ByVal uJoyID As Long, pji As JOYINFO) As Long
'
Private Function GetJoystick(ByVal joy As Integer, JI As JOYINFO) As Boolean
If joyGetPos(joy, JI) <> JOYERR_NOERROR Then
GetJoystick = False
Else
GetJoystick = True
End If
End Function
' If IsConnected is False then it returns the number of
' joysticks the driver supports. (But may not be connected)
'
' If IsConnected is True the it returns the number of
' joysticks present and connected.
'
' IsConnected is true by default.
Private Function IsJoyPresent(Optional IsConnected As Variant) As Long
Dim ic As Boolean
Dim i As Long
Dim j As Long
Dim ret As Long
Dim JI As JOYINFO
ic = IIf(IsMissing(IsConnected), True, CBool(IsConnected))
i = joyGetNumDevs
If ic Then
j = 0
Do While i > 0
i = i - 1 'Joysticks id's are 0 and 1
If joyGetPos(i, JI) = JOYERR_NOERROR Then
j = j + 1
End If
Loop
IsJoyPresent = j
Else
IsJoyPresent = i
End If
End Function
' Fills the ji structure with the minimum x, y, and z
' coordinates. Buttons is filled with the number of
' buttons.
Private Function GetJoyMin(ByVal joy As Integer, JI As JOYINFO) As Boolean
Dim jc As JOYCAPS
If joyGetDevCaps(joy, jc, Len(jc)) <> JOYERR_NOERROR Then
GetJoyMin = False
GetJoyMin = True
End If
End Function
' Fills the ji structure with the maximum x, y, and z
' coordinates. Buttons is filled with the number of
' buttons.
Private Function GetJoyMax(ByVal joy As Integer, JI As JOYINFO) As Boolean
Dim jc As JOYCAPS
If joyGetDevCaps(joy, jc, Len(jc)) <> JOYERR_NOERROR Then
GetJoyMax = False
Else
JI.X = jc.wXmax
JI.Y = jc.wYmax
JI.Z = jc.wZmax
JI.Buttons = jc.wNumButtons
GetJoyMax = True
End If
End Function
Dim JInfo As JOYINFO
'Clear the form
Me.Cls
'Print the information to the form
Me.Print "Number of joysticks the driver supports:" + Str$(IsJoyPresent(False))
Me.Print "Number of connected joysticks:" + Str$(IsJoyPresent(True))
GetJoystick JOYSTICKID1, JInfo
Me.Print "Number of buttons:" + Str$(JInfo.Buttons) ' c'est ici que ça se passe
GetJoyMax JOYSTICKID1, JInfo
Me.Print "Max X:" + Str$(JInfo.X)
Me.Print "Max Y:" + Str$(JInfo.Y)
Me.Print "Max Z:" + Str$(JInfo.Z)
GetJoyMin JOYSTICKID1, JInfo
Me.Print "Min X:" + Str$(JInfo.X)
Me.Print "Min Y:" + Str$(JInfo.Y)
Me.Print "Min Z:" + Str$(JInfo.Z)
End Sub
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
<hr />
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)