cs_Gokuan
Messages postés51Date d'inscriptionjeudi 23 mai 2002StatutMembreDernière intervention17 novembre 2008
-
2 juin 2002 à 16:39
cs_ManChesTer
Messages postés374Date d'inscriptionvendredi 20 octobre 2000StatutModérateurDernière intervention15 janvier 2021
-
2 juin 2002 à 19:13
Salut tout le monde, je voulais vous poser une question, je suis entrain de faire un jeu, le carré magique, mais je l'ai fais avec 8 bouton que l'on peut déplacer en cliquant dessus avec la souris, mais il faudrais, que lorsque je pose un des 8 bouton, il se place automatiquement sur la case la plus proche, mais je sais pas trop comment m'y prendre, donc si quelqu'un pourrai m'aider, merci d'avance! :-)
Et encore une dernière question, je suis aussi penché sur le master mind, mais je sais pas comment faire un random d'image? Dison que j'ai cinq 10 image, avec 10 couleur differente et lorsque l'on clique sur un bouton, ben il faudrait que ça garde en mémoire 5 images aléatoir sur les 10, merci d'avance!
cs_ManChesTer
Messages postés374Date d'inscriptionvendredi 20 octobre 2000StatutModérateurDernière intervention15 janvier 2021 2 juin 2002 à 19:13
bon supposons un carè magique de 8 carès sur 8 carès (si j'ai bien compris).
que le tout se trouve dans un form (form1) ca marche aussi avec un panel ou autres, suffit d'adapter...
les carès sont par exemple de 30 pixels sur 30 pixels.
tu dois:
1. Déterminer quel est le carè dans lequel le bouton se trouve au moment ou l'utilisateur le lache.
2. Aligner le bouton par raport au carè
donc ds l'evenement OnMouseUp de chaque bouton tu peux ajouter :
Procedure Tform1.ButtonxOnMouseUp((Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var CareX,CareY :integer;
begin
x:=Tbutton(sender).left; //prendre le x de l'endroit ou se trouve le boutton
y:=Tbutton(sender).top; //prendre le y de l'endroit ou se trouve le boutton
CareX:=(x div 30)*30; // trouvè les coordonées x et y d'alignement
CareY:=(y div 30)*30;
Tbutton(sender).left:=CareX; // aligner le bouton
Tbutton(sender).top:=CareY;
end;
Tu peux faire ca plus simplement mais ici, mon but est de te faire comprendre le systeme