IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WinDev Discussion :

Bouton avec position "aléatoire"


Sujet :

WinDev

  1. #1
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Juillet 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : Belgique

    Informations professionnelles :
    Activité : Lycéen
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2016
    Messages : 6
    Points : 4
    Points
    4
    Par défaut Bouton avec position "aléatoire"
    Bonjour,

    je voudrais savoir si il serait possible de changer la position des boutons par programmation. Ma fenêtre :

    Nom : L5921.jpg
Affichages : 235
Taille : 8,1 Ko

    Je voudrais par exemple que le premier bouton se trouve à la place du 4éme et inversement. Je ne trouve rien de concret.

    Merci de votre aide précieuse

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    486
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 486
    Points : 875
    Points
    875
    Par défaut
    MoveWindow.

  3. #3
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Juillet 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : Belgique

    Informations professionnelles :
    Activité : Lycéen
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2016
    Messages : 6
    Points : 4
    Points
    4
    Par défaut
    MoveWindow n'existe pas dans WinDev

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 198
    Points : 12 774
    Points
    12 774
    Par défaut
    Bonjour,
    Peut-être avec les propriétés ..x et ..y de chaque bouton ?

    Tatayo.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    486
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 486
    Points : 875
    Points
    875
    Par défaut
    MoveWindow n'existe pas dans WinDev
    tiens, tiens

    API("USER32.DLL", "MoveWindow", etc.)

    L'ensemble du code WinDev encapsule l'API bas niveau, laquelle fait le véritable travail.

    ...

  6. #6
    Membre averti Avatar de LeonCosnyd
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    439
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 439
    Points : 368
    Points
    368
    Par défaut
    Je pense que Cavelas souhaite tout simplement échanger la position du bouton 1 et du bouton 4 dans sa fenêtre. Pourquoi partir sur de l'api windows quand on peut le faire simplement avec Windev ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    iNbBouton est un entier
    iNouvellePositionAléatoire est un entier
    iPosXTemp est un entier
    iPosYTemp est un entier
     
    // Utilisation de la fonction Hasard() pour déplacer le bouton 1 (ChampBouton1)
    InitHasard()
    iNbBouton = 6
    iNouvellePositionAléatoire = Hasard(2,iNbBouton)
     
    // Sauvegarde de la position du bouton 1
    iPosXTemp = ChampBouton1..x
    iPosYTemp = ChampBouton2..y
     
    // Déplacement du bouton1
    ChampBouton1..x = {"ChampBouton"+iNouvellePositionAléatoire,indChamp}..x
    ChampBouton1..y = {"ChampBouton"+iNouvellePositionAléatoire,indChamp}..y
     
    // Déplacement du bouton qui a été sélectionné par la fonction Hasard()
    {"ChampBouton"+iNouvellePositionAléatoire,indChamp}..x = iPosXTemp 
    {"ChampBouton"+iNouvellePositionAléatoire,indChamp}..y = iPosYTemp
    Mais je n'ai peut-être rien compris à la demande initiale de Cavelas
    Google est ton ami !

  7. #7
    Invité
    Invité(e)
    Par défaut
    ça me rappelle mon premier projet que j'avais fais lors de mes études où je devais faire le jeu memory sur console en c++

    Pour ton truc, on peut très bien se contenter des outils windev, en gros comment je vois le projet :
    - instancier une variable tableau de 2 lignes, 3 colonnes de type entier, avec 0 à chaque position (TabBoutonsPlaces)
    - instancier une variable tableau de 2 colonnes de type entier avec les différentes positions en X (PositionBoutonsX)
    - instancier une variable tableau de 3 colonnes de type entier avec les différentes positions en Y (PositionBoutonsY)

    Faire une boucle POUR TOUT allant de 1 à 2 (jusqu'à 2 car on a 2 lignes), faire une boucle TANTQUE, jusqu'à ce que toutes les colonnes TabBoutonsPlaces aient la valeur 1 pour un indice en X fixé, code dans la boucle TANTQUE :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    l_y=Hasard(1,3)
    SI TabBoutonsPlaces[loop_x][l_y]=0 Alors //loop_x : indice de parcours dans ma boucle POUR TOUT
    TabBoutonsPlaces[loop_x][l_y]=1
    //positionner le bouton correspondant à l'aide de PositionBoutonsX[loop_x] et PositionBoutonsY[l_y]
    FIN

  8. #8
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 057
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 057
    Points : 9 397
    Points
    9 397
    Par défaut
    J'interprète la demande initiale comme Leon Cosnyd, et donc effectivement, les propriétés ..x et ..y sont parfaitement adaptées pour cela.

    Mais on peut nettement alléger le code en utilisant l'opérateur 'permutation' : <=>

    bouton1..x <=> bouton4..x
    bouton1..y <=> bouton4..y

    Plus besoin de iPosxtemp et iPosytemp
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  9. #9
    Membre averti Avatar de LeonCosnyd
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    439
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 439
    Points : 368
    Points
    368
    Par défaut
    Je ne connaissais même pas cet opérateur
    Google est ton ami !

  10. #10
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 057
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 057
    Points : 9 397
    Points
    9 397
    Par défaut
    Cet opérateur d'échange est peu connu. Je pensais qu'il était récent, parce que je l'ai découvert récemment, mais en fait il existe depuis Windev 9 !
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

Discussions similaires

  1. Probleme avec encodage de simple quote
    Par linkowich dans le forum Langage
    Réponses: 2
    Dernier message: 31/10/2005, 13h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo