nabilwael
Messages postés62Date d'inscriptionlundi 25 avril 2005StatutMembreDernière intervention11 mars 2010
-
16 avril 2007 à 17:37
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 2014
-
16 avril 2007 à 22:39
bonjour,
comment je peus dessiner dans ma forme une ligne vertical ou horizontal avec la sourie
merci
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 16 avril 2007 à 17:40
Salut,
Bonne section au bout du 29 eme message (en progrès)
[auteurdetail.aspx?ID= 2359 Renfield] a dit:
Me.Line ( X1,Y1)-(X2,Y2)
est ce que au moins tu as essayé ce que l'on te proposepour une ligne horizontale Y1 Y2 et pour une ligne verticale X1 X2
Prochaine étape dans "comment se servir du forum"
- tu apprendras à ne pas poster deux fois la même question à quelques minutes d'interval (même pour en chagner la section).
- Tu apprendra aussi à trouver des titres SIGNIFICATIFS à tes problèmes.
@+: =89254 Ju£i?n Pensez: Réponse acceptée
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 16 avril 2007 à 17:47
dessiner avec la souris ?
voici une BASE, reste a adapter a TES besoins :
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = vbLeftButton Then If Me.CurrentX 0 And Me.CurrentY 0 Then
Me.CurrentX = X
Me.CurrentY = Y
End If
Me.Line -(X, Y)
End If
End Sub , ----
By Renfield
cs_lermite222
Messages postés492Date d'inscriptionjeudi 5 avril 2007StatutMembreDernière intervention 2 juillet 20124 16 avril 2007 à 20:56
Salut,
Je me suis un peu amusé, colle le code ci dessous dans une forme et test, ca te donnera des idées pour tirer des lignes
Clicker sur la forme et déplacer la souris.
Dim mAxeY As Single
Dim mAxeX As Single
Dim W As Long, H As Long
Private Sub Form_Load()
W = Me.Width
H = Me.Height
End Sub
Private Sub Form_MouseDown(Button As Integer, Shift _
As Integer, X As Single, Y As Single)
Me.DrawMode = 13 AxeY Y: AxeX X
Line (X, 0)-(X, H)
Line (0, Y)-(W, Y) mAxeY Y: mAxeX X
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift _
As Integer, X As Single, Y As Single)
If Button <> 0 Then
'mode Note merge (efface)
Me.DrawMode = 2
Line (mAxeX, 0)-(mAxeX, H)
Line (0, mAxeY)-(W, mAxeY) mAxeY Y: mAxeX X
'mode draw
Me.DrawMode = 13
'par défaut dessine sur la feuille
Line (mAxeX, 0)-(mAxeX, H)
Line (0, mAxeY)-(W, mAxeY)
End If
End Sub
Private Sub Form_Resize()
W = Me.Width
H = Me.Height
End Sub
A+
louis
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 16 avril 2007 à 21:36
Ouais...
Vous êtes en train de l'égarer...
Je sais bien qu'il ne le mérite pas vraiment... mais voilà
Private debx As Integer, deby As Integer
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
debx = X
deby = Y
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Not Button = 1 Then Exit Sub
Me.Cls
Me.Line (debx, deby)-(X, Y)
End Sub
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Not Button = 1 Then Exit Sub
Me.AutoRedraw = True
Me.Line (debx, deby)-(X, Y)
Me.AutoRedraw = False
End Sub
Tu cliques en un point, gardes ton bouton pressé, te déplaces où tu veux et libère ton bouton...
Tu fais ainsi, ensuite, autant de lignes que tu veux ...
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 16 avril 2007 à 22:32
Copie de rien du tout, sinon du trois cent millième du moins bon de mes outils de dessin ...
Il s'agit là du code le plus élémentaire possible, sans même utiliser la moindre structure ... tu rigoles, je pense...
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 16 avril 2007 à 22:39
Tiens, Lermitte, ce code vient directement de l'aide en ligne de VB...(j'espère que VB ne t'a pas copié !...)
Profites-en et notre ami demandeur aussi...
Sub Form_Click()
Dim CX, CY, F, F1, F2, I ' Declare variables
ScaleMode = 3 ' Set ScaleMode to pixels.
CX = ScaleWidth / 2 ' Get horizontal center.
CY = ScaleHeight / 2 ' Get vertical center.
DrawWidth = 8 ' Set DrawWidth.
For I = 50 To 0 Step -2
F = I / 50 ' Perform interim F1 1 - F: F2 1 + F ' calculations.
ForeColor = QBColor(I Mod 15) ' Set foreground color.
Line (CX * F1, CY * F1)-(CX * F2, CY * F2), , BF
Next I
DoEvents ' Yield for other processing.
If CY > CX Then ' Set DrawWidth.
DrawWidth = ScaleWidth / 25
Else
DrawWidth = ScaleHeight / 25
End If
For I = 0 To 50 Step 2 ' Set up loop.
F = I / 50 ' Perform interim F1 1 - F: F2 1 + F ' calculations.
Line (CX * F1, CY)-(CX, CY * F1) ' Draw upper-left.
Line -(CX * F2, CY) ' Draw upper-right.
Line -(CX, CY * F2) ' Draw lower-right.
Line -(CX * F1, CY) ' Draw lower-left.
ForeColor = QBColor(I Mod 15) ' Change color each time.
Next I
DoEvents ' Yield for other processing.
End Sub