Trouver une ressource (Nouvelle version du moteur, plus rapide & pertinent, essayez le !)
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
CARDS.DLL
Information sur la source
Description
Encore une démo de l'utilisation de l'API des cartes de jeu... Pour les débutants. Plutôt bien commenté (si vous en voulez plus, ben, demandez-le moi ;-) Amusez-vous bien avec ce ptit truc.
Source
- 'Déclaration des API de manipulation des cartes à jouer
- Private Declare Function cdtInit Lib "Cards" (nWidth As Long, nHeight As Long) As Long
- Private Declare Function cdtTerm Lib "Cards" () As Long
- Private Declare Function cdtDraw Lib "Cards" (ByVal hDC As Long, ByVal X As Long, ByVal Y As Long, ByVal nCard As Long, ByVal nDraw As Long, ByVal nColor As Long) As Long
- 'Private Declare Function cdtDrawExt Lib "Cards" (ByVal hDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal nCard As Long, ByVal nDraw As Long, ByVal nColor As Long) As Long
-
- 'Cartes :
- ' Faces visible : 0-51
- ' Faces cachée : 53-68
- ' nDraw : 0 = cartes face visible normale
- ' 2 = cartes face visible sélectionnée
- ' 1 = cartes face cachée
- ' Note: On ne peut pas sélectionner une carte face cachée (!!!).
- ' nColor : Couleur de sélection. Avec la carte 53 (1ère face visible),
- ' cette couleur sert de couleur de fond du quadrillage en croix.
-
- Private Sub Form_Load()
- 'Redimensionner la fenêtre
- Me.Width = 3000
- Me.Height = 4125
- Me.Show
- DoEvents
-
- 'Taille par défaut des cartes en pixels
- cdtInit 71, 96
- DoEvents
-
- 'Initilatise l'affichage pour la 1ère fois
- OptionCouleurs(0).Value = True
- Option2(0).Value = True
- Picture2.Tag = "15"
- Call Picture2_DblClick
-
- End Sub
-
- Private Sub Form_Unload(Cancel As Integer)
- 'Nécéssaire afin de libérer la mémoire prise par ces API...
- cdtTerm
- End Sub
-
-
- Private Sub OptionCouleurs_Click(Index As Integer)
- 'Change la couleur
- Static t As Integer
- Static Couleur As Integer
- Static Carte As Integer
-
- 'Recherche la carte...
- Couleur = Index
- Carte = 0
- For t = 0 To (Option2.Count - 1)
- If Option2(t).Value = True Then Carte = t: Exit For
- Next t
- Carte = Index + (Carte * 4) '0-51 [52 cartes]
-
- cdtDraw Picture1.hDC, 9, 9, Carte, &H0, RGB(0, 0, 255)
- End Sub
-
- Private Sub Option2_Click(Index As Integer)
- 'Change la carte
- Static t As Integer
- Static Couleur As Integer
- Static Carte As Integer
-
- 'Recherche la couleur...
- Couleur = 0
- For t = 0 To (OptionCouleurs.Count - 1)
- If OptionCouleurs(t).Value = True Then Couleur = t: Exit For
- Next t
- Carte = Index
- Carte = Couleur + (Carte * 4) '0-51 [52 cartes]
-
- cdtDraw Picture1.hDC, 9, 9, Carte, &H0, RGB(0, 0, 255)
- End Sub
-
-
- Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
- 'Selectionne la carte visible
- Static t As Integer
- Static Couleur As Integer
- Static Carte As Integer
-
- 'Recherche la couleur...
- Couleur = 0
- For t = 0 To (OptionCouleurs.Count - 1)
- If OptionCouleurs(t).Value = True Then Couleur = t: Exit For
- Next t
- 'Recherche la carte...
- Carte = 0
- For t = 0 To (Option2.Count - 1)
- If Option2(t).Value = True Then Carte = t: Exit For
- Next t
- Carte = Couleur + (Carte * 4) '0-51 [52 cartes]
-
- If (X < 9 Or X > 9 + 70) Or (Y < 9 Or Y > 9 + 95) Then
- 'La souris est hors de la carte : Désélectionner
- ' (Afficher la carte normale.)
- cdtDraw Picture1.hDC, 9, 9, Carte, 0, RGB(0, 0, 255)
- Else
- 'La souris est sur la carte : Sélectionner
- ' (Afficher la carte sélectionnée.)
- cdtDraw Picture1.hDC, 9, 9, Carte, 2, 16777215
- End If
-
- End Sub
-
- Private Sub Picture2_DblClick()
- 'Change le jeu (l'image)
- Picture2.Tag = CLng(Picture2.Tag) + 1
- If Picture2.Tag > 15 Then Picture2.Tag = 0
- '53-68
- cdtDraw Picture2.hDC, 9, 9, CLng(Picture2.Tag) + 53, 1, 255
- End Sub
'Déclaration des API de manipulation des cartes à jouer
Private Declare Function cdtInit Lib "Cards" (nWidth As Long, nHeight As Long) As Long
Private Declare Function cdtTerm Lib "Cards" () As Long
Private Declare Function cdtDraw Lib "Cards" (ByVal hDC As Long, ByVal X As Long, ByVal Y As Long, ByVal nCard As Long, ByVal nDraw As Long, ByVal nColor As Long) As Long
'Private Declare Function cdtDrawExt Lib "Cards" (ByVal hDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal nCard As Long, ByVal nDraw As Long, ByVal nColor As Long) As Long
'Cartes :
' Faces visible : 0-51
' Faces cachée : 53-68
' nDraw : 0 = cartes face visible normale
' 2 = cartes face visible sélectionnée
' 1 = cartes face cachée
' Note: On ne peut pas sélectionner une carte face cachée (!!!).
' nColor : Couleur de sélection. Avec la carte 53 (1ère face visible),
' cette couleur sert de couleur de fond du quadrillage en croix.
Private Sub Form_Load()
'Redimensionner la fenêtre
Me.Width = 3000
Me.Height = 4125
Me.Show
DoEvents
'Taille par défaut des cartes en pixels
cdtInit 71, 96
DoEvents
'Initilatise l'affichage pour la 1ère fois
OptionCouleurs(0).Value = True
Option2(0).Value = True
Picture2.Tag = "15"
Call Picture2_DblClick
End Sub
Private Sub Form_Unload(Cancel As Integer)
'Nécéssaire afin de libérer la mémoire prise par ces API...
cdtTerm
End Sub
Private Sub OptionCouleurs_Click(Index As Integer)
'Change la couleur
Static t As Integer
Static Couleur As Integer
Static Carte As Integer
'Recherche la carte...
Couleur = Index
Carte = 0
For t = 0 To (Option2.Count - 1)
If Option2(t).Value = True Then Carte = t: Exit For
Next t
Carte = Index + (Carte * 4) '0-51 [52 cartes]
cdtDraw Picture1.hDC, 9, 9, Carte, &H0, RGB(0, 0, 255)
End Sub
Private Sub Option2_Click(Index As Integer)
'Change la carte
Static t As Integer
Static Couleur As Integer
Static Carte As Integer
'Recherche la couleur...
Couleur = 0
For t = 0 To (OptionCouleurs.Count - 1)
If OptionCouleurs(t).Value = True Then Couleur = t: Exit For
Next t
Carte = Index
Carte = Couleur + (Carte * 4) '0-51 [52 cartes]
cdtDraw Picture1.hDC, 9, 9, Carte, &H0, RGB(0, 0, 255)
End Sub
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
'Selectionne la carte visible
Static t As Integer
Static Couleur As Integer
Static Carte As Integer
'Recherche la couleur...
Couleur = 0
For t = 0 To (OptionCouleurs.Count - 1)
If OptionCouleurs(t).Value = True Then Couleur = t: Exit For
Next t
'Recherche la carte...
Carte = 0
For t = 0 To (Option2.Count - 1)
If Option2(t).Value = True Then Carte = t: Exit For
Next t
Carte = Couleur + (Carte * 4) '0-51 [52 cartes]
If (X < 9 Or X > 9 + 70) Or (Y < 9 Or Y > 9 + 95) Then
'La souris est hors de la carte : Désélectionner
' (Afficher la carte normale.)
cdtDraw Picture1.hDC, 9, 9, Carte, 0, RGB(0, 0, 255)
Else
'La souris est sur la carte : Sélectionner
' (Afficher la carte sélectionnée.)
cdtDraw Picture1.hDC, 9, 9, Carte, 2, 16777215
End If
End Sub
Private Sub Picture2_DblClick()
'Change le jeu (l'image)
Picture2.Tag = CLng(Picture2.Tag) + 1
If Picture2.Tag > 15 Then Picture2.Tag = 0
'53-68
cdtDraw Picture2.hDC, 9, 9, CLng(Picture2.Tag) + 53, 1, 255
End Sub
Fichier Zip
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
Télécharger le zip
Historique
- 30 janvier 2005 21:31:41 :
- Petite explication consernant la couleur de sélection...
Sources de la même categorie
Commentaires
|
CalendriCode
| | | L | M | M | J | V | S | D |
| | 1 | 2 | 3 | 4 | 5 | 6 |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 | | | |
|
|