La trace d'une ligne

Résolu
argentin7 Messages postés 125 Date d'inscription vendredi 10 août 2007 Statut Membre Dernière intervention 14 juillet 2008 - 7 nov. 2007 à 08:32
argentin7 Messages postés 125 Date d'inscription vendredi 10 août 2007 Statut Membre Dernière intervention 14 juillet 2008 - 7 nov. 2007 à 10:40
bonjour tout le monde


 


je cree des lignes (line) dynamiquement et j'associe a chaque ligne un label ( cree dynamiquement)


de maniere que a chaque fois que je clique sur le label (associé a la ligne voulue) ---> je supprime la ligne unload(ligne(i)).

le probleme c'est que lorsque je supprime la ligne, elle laisse une trace (une ligne)
la ligne est effectivement dechargé (unload), mais je ne comprend pas pourquoi cette trace

et merci infiniement

8 réponses

jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
7 nov. 2007 à 09:10
Ne pas confondre un dessin avec un contrôle shape

Voilà en chargeant et déchargeant ... : pas de problèmes
Private Sub Command1_Click()
 Unload Line1(1)
 MsgBox "index 1 supprimé"
 Line1(2).Visible = False
 Unload Line1(2)
 MsgBox "index 2 supprimé"
End Sub


Private Sub Form_Load()
  Line1(0).X1 = 0
  Line1(0).Y1 = 0
  Line1(0).X2 = 1000
  Line1(0).Y2 = 1000
  For i = 1 To 2
    Load Line1(i)
    Line1(i).Visible = True
    Line1(i).Y2 = Line1(0).X2 * i * 2
  Next
End Sub

PS : un dessin s'efface par Cls.
3
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
7 nov. 2007 à 08:36
Salut,
Essaie peu être de faire un Refresh de ton Form.
Sinon donne le code utilisé pour voir si c'est reproductible chez nous.

@+: Ju£i?n
Pensez: Réponse acceptée
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
7 nov. 2007 à 08:51
Bonjour,

Pas de problème chez moi !

Ton code ?
0
argentin7 Messages postés 125 Date d'inscription vendredi 10 août 2007 Statut Membre Dernière intervention 14 juillet 2008
7 nov. 2007 à 09:04
'la premiere etape pour tracer une ligne
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)



 


 


Xdn = x
Ydn = y
If Xdn <> Xup Or Ydn <> Yup Then
J = TestLigne.UBound + 1
Call Load(TestLigne(J))
Call Load(Lblindice(J))


 


    X1 = x
    Y1 = y
    X2 = x
    Y2 = y
End If
End If
End Sub

'la deuxieme etape pour tracer une ligne
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
    If Button = 1 Then
       
        Form1.DrawMode = 6
       
        If Abs(X1 - X2) > 0 Then
           
            With TestLigne(J)
           .X1 = X1
           .X2 = X2
           .Y1 = Y1
           .Y2 = Y2
          
          
            End With
              
            Line (X1, Y1)-(X2, Y2)
           
        End If
        X2 = x
        Y2 = y
      
       With TestLigne(J)
           .X1 = X1
           .X2 = X2
           .Y1 = Y1
           .Y2 = Y2
          
          
       End With
       
       
       
        Line (X1, Y1)-(X2, Y2)
    End If
End If
End Sub
'la troisieme et derniere etape pour tracer une ligne et affecter a testligne(j)
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single)


 


    Xup = x
    Yup = y
    If X1 <> X2 Or Y1 <> Y2 Then
    Form1.DrawMode = 13
    TestLigne(J).Visible = True
    Lblindice(J).Visible = True
    Lblindice(J).Caption = J
    Lblindice(J).Left = (TestLigne(J).X1 + TestLigne(J).X2) / 2
    Lblindice(J).Top = (TestLigne(J).Y1 + TestLigne(J).Y2) / 2
    'n'oubliez pas que l'element zero existe c a lui meme quand doit la creation des
    'autre element "testligne(0) et lblindice(0)"
    'le nombre d'elemnt que j'ai est egale au nombre d'element visible+1
   
    End If
End If
End Sub
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
argentin7 Messages postés 125 Date d'inscription vendredi 10 août 2007 Statut Membre Dernière intervention 14 juillet 2008
7 nov. 2007 à 09:07
je pense que le probleme reside dans LINE (X1,Y1)-(X2,Y2)
oui ca doit etre ca
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
7 nov. 2007 à 09:07
 Line (X1, Y1)-(X2, Y2)

Mais... voyons donc !!!!!

Là, tu DESSINES !....
0
argentin7 Messages postés 125 Date d'inscription vendredi 10 août 2007 Statut Membre Dernière intervention 14 juillet 2008
7 nov. 2007 à 10:19
pas de probleme chez jmfmarques

merci a tous
je dois rectifier mon code

on ne peut pas faire un CLS pour une ligne (dessin) et une seule
0
argentin7 Messages postés 125 Date d'inscription vendredi 10 août 2007 Statut Membre Dernière intervention 14 juillet 2008
7 nov. 2007 à 10:40
pour les debutants comme moi

il faut supprimer LINE (X1,Y1)-(X2,Y2) et ajouter a sa place testligne(j).visible=true
bonne chance
0
Rejoignez-nous