Home All Groups Group Topic Archive Search About
Author
6 Nov 2006 11:34 PM
Steve Long
Hello,
there is probably something obvious here that I'm just not seeing but I am
trying to draw an alternating colored line on a picturebox and I, for the
life of me, cannot get the line to show up. I'm using VS 2003.
The size of the picturebox is 320 x 24. I using the following code.

For t = 1 To NumTics    ' NumTics = 10
    If curColor.Equals(mBarColor2) Then
        curColor = mBarColor1        ' Black
    Else
        curColor = mBarColor2        ' Red
    End If
    XMin = Offset + ((t - 1) * 39)
    XMax = Offset + (t * 39)
    YMin = Ycen - (Ycen * 0.05)        'Ycen = 12
    YMax = Ycen + (Ycen * 0.05)
    rect = New Rectangle(XMin, YMin, XMax - XMin, YMax - YMin)
    DrawLine(g, curColor, Drawing2D.DashStyle.Solid, rect)
Next t

Public Shared Sub DrawLine(ByRef g As Graphics, _
                                            ByVal lineColor As Color, _
                                            ByVal lineStyle As DashStyle, _
                                            ByVal rect As Rectangle)
Dim pn As New Pen(lineColor, rect.Height)
    pn.DashStyle = lineStyle
    g.DrawLine(pn, rect.Left, rect.Top, rect.Left + rect.Width, rect.Top +
rect.Height)
    pn.Dispose()
End Sub

Any help is greatly appreciate as I am just not seeing what the heck I'm
doing wrong.
P.S. The picturebox is on a userControl

Thanks
Steve

Author
7 Nov 2006 5:10 PM
JR
I can't find your declaration of G for the line  DrawLine(g, curColor,
Drawing2D.DashStyle.Solid, rect)
it shoud be something like
Dim g As Graphics = Me.CreateGraphics



Show quoteHide quote
"Steve Long" <Steve_Noneya@NoSpam.com> schreef in bericht
news:Oy9rTwfAHHA.1196@TK2MSFTNGP02.phx.gbl...
> Hello,
> there is probably something obvious here that I'm just not seeing but I am
> trying to draw an alternating colored line on a picturebox and I, for the
> life of me, cannot get the line to show up. I'm using VS 2003.
> The size of the picturebox is 320 x 24. I using the following code.
>
> For t = 1 To NumTics    ' NumTics = 10
>    If curColor.Equals(mBarColor2) Then
>        curColor = mBarColor1        ' Black
>    Else
>        curColor = mBarColor2        ' Red
>    End If
>    XMin = Offset + ((t - 1) * 39)
>    XMax = Offset + (t * 39)
>    YMin = Ycen - (Ycen * 0.05)        'Ycen = 12
>    YMax = Ycen + (Ycen * 0.05)
>    rect = New Rectangle(XMin, YMin, XMax - XMin, YMax - YMin)
>    DrawLine(g, curColor, Drawing2D.DashStyle.Solid, rect)
> Next t
>
> Public Shared Sub DrawLine(ByRef g As Graphics, _
>                                            ByVal lineColor As Color, _
>                                            ByVal lineStyle As DashStyle, _
>                                            ByVal rect As Rectangle)
> Dim pn As New Pen(lineColor, rect.Height)
>    pn.DashStyle = lineStyle
>    g.DrawLine(pn, rect.Left, rect.Top, rect.Left + rect.Width, rect.Top +
> rect.Height)
>    pn.Dispose()
> End Sub
>
> Any help is greatly appreciate as I am just not seeing what the heck I'm
> doing wrong.
> P.S. The picturebox is on a userControl
>
> Thanks
> Steve
>
Author
7 Nov 2006 5:40 PM
Steve Long
Hi JR.
It's actually created from the picturebox control Picture1.
Dim g as Graphics = Picture1.CreateGraphics. Shouldn't that do it?

Steve

Show quoteHide quote
"JR" <x.x@x.x> wrote in message
news:_534h.171876$Dv2.2704441@phobos.telenet-ops.be...
>I can't find your declaration of G for the line  DrawLine(g, curColor,
>Drawing2D.DashStyle.Solid, rect)
> it shoud be something like
> Dim g As Graphics = Me.CreateGraphics
>
>
>
> "Steve Long" <Steve_Noneya@NoSpam.com> schreef in bericht
> news:Oy9rTwfAHHA.1196@TK2MSFTNGP02.phx.gbl...
>> Hello,
>> there is probably something obvious here that I'm just not seeing but I
>> am trying to draw an alternating colored line on a picturebox and I, for
>> the life of me, cannot get the line to show up. I'm using VS 2003.
>> The size of the picturebox is 320 x 24. I using the following code.
>>
>> For t = 1 To NumTics    ' NumTics = 10
>>    If curColor.Equals(mBarColor2) Then
>>        curColor = mBarColor1        ' Black
>>    Else
>>        curColor = mBarColor2        ' Red
>>    End If
>>    XMin = Offset + ((t - 1) * 39)
>>    XMax = Offset + (t * 39)
>>    YMin = Ycen - (Ycen * 0.05)        'Ycen = 12
>>    YMax = Ycen + (Ycen * 0.05)
>>    rect = New Rectangle(XMin, YMin, XMax - XMin, YMax - YMin)
>>    DrawLine(g, curColor, Drawing2D.DashStyle.Solid, rect)
>> Next t
>>
>> Public Shared Sub DrawLine(ByRef g As Graphics, _
>>                                            ByVal lineColor As Color, _
>>                                            ByVal lineStyle As DashStyle,
>> _
>>                                            ByVal rect As Rectangle)
>> Dim pn As New Pen(lineColor, rect.Height)
>>    pn.DashStyle = lineStyle
>>    g.DrawLine(pn, rect.Left, rect.Top, rect.Left + rect.Width, rect.Top +
>> rect.Height)
>>    pn.Dispose()
>> End Sub
>>
>> Any help is greatly appreciate as I am just not seeing what the heck I'm
>> doing wrong.
>> P.S. The picturebox is on a userControl
>>
>> Thanks
>> Steve
>>
>
>