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 :

[WD27] Idée(s) pour déplacement fenêtre


Sujet :

WinDev

  1. #1
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut [WD27] Idée(s) pour déplacement fenêtre
    Bonjour,

    Je cherche une idée (plus mieux) que celle que je m'apprête à essayer de mettre en place pour un projet en interne. J'explique le contexte :
    - Une fenêtre sans barre de titre, avec un champ onglet dynamique (qui prend quasiment toute la fenêtre), "mes" boutons réduction et fermeture et un déplacement par le fond.

    Mon souci est que par réflexe pavlovien hérité de dizaines d'années de pratique windozienne, j'essaye toujours de déplacer la fenêtre en cliquant sur la zone à droite des volets de l'onglet.

    Mon idée est la suivante :
    - Dans le code "Bouton gauche enfoncé de ONG", mettre un booléen (global fenêtre) à vrai,
    - Dans le code "Bouton gauche relâché de ONG", mettre ce booléen à faux,
    - Dans le code d'init de la fenêtre, mettre un événement wm_mousemove pour la gestion du déplacement.

    Je n'ai pas encore testé, mais je pense que je ne dois pas être trop loin de la vérité. Mais, je me demandais malgré tout, s'il n'y aurait pas plus simple.

    A vos mulots

    Merci d'avance pour vos retours
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  2. #2
    Expert confirmé
    Avatar de Voroltinquo
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2017
    Messages
    2 808
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Juin 2017
    Messages : 2 808
    Points : 5 267
    Points
    5 267
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    Si j'ai bien compris, tu veux rendre "transparent" vis à vis de la souris, la zone en pointillé
    Nom : 2023-06-23_16h07_01.png
Affichages : 94
Taille : 30,0 Ko
    En ce qui me concerne, avec les réglage suivants (réglages par défaut de mon gabarit)
    Nom : 2023-06-23_16h22_35.png
Affichages : 91
Taille : 22,2 Ko
    Nom : 2023-06-23_16h21_40.png
Affichages : 86
Taille : 17,8 Ko
    Ma fenêtre se déplace quel que soit l'endroit où je clique (ou presque.)
    Il faut bien entendu exclure
    -le Libellé des volets (au niveau de la partie conteneur elle même, ça fonctionne)
    -les boutons
    -les flèches de combo
    -...
    Dans ce cas, ce sont les événement spécifiques aux champs qui prennent la main
    Nom : 2023-06-23_16h36_20.png
Affichages : 93
Taille : 45,9 Ko

    Note
    Mes "boutons systèmes" sont regroupés dans un SC et utilisent les fonctions, Maximise, Minimise et consort
    Il y a peut-être plus simple, mais ça tourne.
    Quand tout a échoué utilisez l'option RTFM

  3. #3
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Hello Voroltinquo,

    C'est ça mais c'est pas ça :Nom : Capture d'écran 2023-06-23 170834.png
Affichages : 83
Taille : 34,2 Ko

    Je veux pouvoir cliquer entre le plus de l'onglet dynamique et le bouton de réduction.
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  4. #4
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Bonjur,

    J'écris ici ma solution. La notion de delta correspond à la distance entre le point de clic et le coin (supérieur gauche) de la fenêtre. C'est ce coin qui est utilisé pour positionner la fenêtre.

    Dans le code d'init de la fenêtre, je déclare 3 variables. Un booléen : EntreEnCliquéGlissé et 2 entiers : deltaX et deltaY. Je déclare également un évènement : Evénement(pl_DéplaceFenêtre, ONG..Nom, WM_MOUSEMOVE)
    Dans le code "bouton gauche enfoncé de Ong" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    CliquéGlissé = Vrai
    deltaX = SourisPosX(spEcran) - MaFenêtre..X
    deltaY = SourisPosY(spEcran) - MaFenêtre..Y
    Dans le code "bouton gauche relaché de Ong" :La procédure
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    PROCÉDURE pl_DéplaceFenêtre()
     
    SI PAS CliquéGlissé ALORS
    	RETOUR
    FIN
     
    MaFenêtre..X = SourisPosX(spEcran) - deltaX
    MaFenêtre..Y = SourisPosY(spEcran) - deltaY
    Par acquis de conscience, j'ai ajouté des CliquéGlissé = faux sur les pertes de focus du champ onglet et de la fenêtre, mais je n'ai pas uu de passage dessus lors de mes tests...
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [debutant] ide gratuite pour le microsoftvisual c++ toolkit
    Par mlequim dans le forum Autres éditeurs
    Réponses: 3
    Dernier message: 16/08/2005, 20h06
  2. [WindowListener] Problème pour créé fenêtre
    Par dib258 dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 06/08/2005, 13h57
  3. Lien pour afficher fenêtre Propriétés système.
    Par keny dans le forum C++Builder
    Réponses: 2
    Dernier message: 11/07/2005, 18h13
  4. [JSP]Quel IDE/editor pour JSP
    Par auboulot dans le forum EDI et Outils pour Java
    Réponses: 2
    Dernier message: 14/04/2005, 11h28

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