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

VB 6 et antérieur Discussion :

[VB6] Deplacer un objet sur une form en mode Exploitation


Sujet :

VB 6 et antérieur

  1. #1
    Membre régulier Avatar de Lucas42
    Inscrit en
    Janvier 2006
    Messages
    301
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 301
    Points : 97
    Points
    97
    Par défaut [VB6] Deplacer un objet sur une form en mode Exploitation
    Bonjour , je posséde sur ma form un label et une picturebox , et j'aimerai savoir , en MODE EXPLOITATION , s'il est possible de pouvoir les deplacer sur la form ?????

    merci d'avance
    amicalement lucas

  2. #2
    Membre éclairé
    Avatar de Catbull
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    542
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 542
    Points : 854
    Points
    854
    Par défaut
    Modification des propriétés Top et Left ou utilisation de la méthode Move.

  3. #3
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    Sinon tu fait un drag & drop. regarde dans les FAQ.

  4. #4
    Membre régulier Avatar de Lucas42
    Inscrit en
    Janvier 2006
    Messages
    301
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 301
    Points : 97
    Points
    97
    Par défaut
    ouais j'ai regarder le FAQ et des trucs sur le net mais je trouve rien pour faire bouger un control en DIRECT , je m'explique j'aimerai que lorsque je reste cliqué sur mon controle , que je puisse le deplacer REELEMENT , et non pas deplacer un curseur vide à la place .....

  5. #5
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    cela, précisément, s'appelle le drag and drop

  6. #6
    Membre éprouvé
    Avatar de méphistopheles
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 551
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 551
    Points : 1 220
    Points
    1 220
    Par défaut
    et encore, si c'est sur ta form, tu peux le faire manuellement.

  7. #7
    Membre régulier Avatar de Lucas42
    Inscrit en
    Janvier 2006
    Messages
    301
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 301
    Points : 97
    Points
    97
    Par défaut
    voila , c'est bon , sans drag and drop j'ai reussi à deplacer mes controles
    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
    Option Explicit
    Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Button = 2 Then
        Command1.Top = Command1.Top + (Y - Command1.Height)
        Command1.Left = Command1.Left + (X - Command1.Width)
    End If
    End Sub
    Private Sub picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Button = 2 Then
        Picture1.Top = Picture1.Top + (Y - Picture1.Height)
        Picture1.Left = Picture1.Left + (X - Picture1.Width)
    End If
    End Sub
    Private Sub label1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Button = 2 Then
        Label1.Top = Label1.Top + (Y - Label1.Height)
        Label1.Left = Label1.Left + (X - Label1.Width)
    End If
    End Sub

  8. #8
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Aie ...!
    Ce qui s'appelle du drag and drop... et que tu as fait imparfaitement (tes contrôles sont mal "maitrisés" dès le départ).
    Pourquoi ?
    Par ce que tu n'as pas utilisé les 1ères coordonnées, telles qu'elle étaient au mouseDown, pour assurer un déplacement parfaitement contrôlé !

  9. #9
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Allez !
    sur une form : un bouton de command command1 et le code suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Option Explicit
    Dim x0 As Integer, Y0 As Integer
    Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
      If Button = 1 Then
        Command1.Move Int((Command1.Left + ScaleX(X, 1, 3)) - x0), Int((Command1.Top + ScaleY(Y, 1, 3)) - Y0)
      End If
    End Sub
    Private Sub command1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
      If Button = 1 Then
        Y0 = ScaleY(Y, 1, 3)
        x0 = ScaleX(X, 1, 3)
      End If
    End Sub
    J'ai choisi ici d'utiliser le bouton gauche de la souris pour ces glisser/déposer

    les variables x0 et y0 sont les mêmes pour tous tes objets (ne fais pas un x0 et un y0 par objet, hein ...)

  10. #10
    Membre régulier Avatar de Lucas42
    Inscrit en
    Janvier 2006
    Messages
    301
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 301
    Points : 97
    Points
    97
    Par défaut
    en effet , utiliser l'evenement mousedown aprés mousemove est mieu ^^
    merki bcp

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

Discussions similaires

  1. [WD14] deplacer des objet sur une fenetre
    Par ehui_kouakess dans le forum WinDev
    Réponses: 4
    Dernier message: 09/10/2009, 14h30
  2. Réponses: 2
    Dernier message: 28/06/2008, 10h08
  3. [VB6] Témoin de calcul sur une form
    Par kawel dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 07/08/2006, 19h44
  4. déplacer un objet TLabel sur une Form
    Par darkangel37 dans le forum C++Builder
    Réponses: 14
    Dernier message: 14/06/2006, 10h36
  5. Réponses: 13
    Dernier message: 09/05/2006, 16h30

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