تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] مطلوب التعديل علي الكود التالي
#1
اولا الكود خاص بالرسم البياني اريد الاتي


1 لو كان  ارتفاع الاعمدة الخاصة بالرسم البياني متغير وليس قيم ثابتة كما بالمثال  يعني يضاف 7 تيكست ويتم تغير قيم 7 اعمدة منها

ويتم ايضا تغير المحور الافقي وفقا لقيمة معينةمن التيكست تقسم علي 10 عد د  النقط من بدا من اول المحور الي اخرة

اريد كود ربط ارتفاع 7 اعمدة  المتغير ة من   تيكست7  وفقا لما يقابل قيمتها بالمحور الراسي المتغير قيمة ايضا


2- ارجاع  قيمة المتغير في حدث الرسم الي بيكتشر الصورة حتي يتم طباعتها  لانة عند الطباعة تظهر فارغة


الكود الخاص بالرسم البياني 


PHP كود :
Private Sub PictureBox1_Paint(ByVal sender As ObjectByVal e As System.Windows.Forms.PaintEventArgsHandles PictureBox1.Paint

        Dim m_matrix 
As New Matrix(100, -10PictureBox1.ClientSize.Height)
 
       e.Graphics.Transform m_matrix

        Dim lgbBrush 
As New LinearGradientBrush(New Rectangle(00PictureBox1.ClientSize.WidthPictureBox1.ClientSize.Height), Color.SilverColor.Azure90True)

 
       e.Graphics.FillRectangle(lgbBrush, New Rectangle(00PictureBox1.ClientSize.WidthPictureBox1.ClientSize.Height))


 
       e.Graphics.DrawLine(Pens.Black503035030)
 
       e.Graphics.DrawLine(Pens.Black503050330)

 
       For x As Integer 0 To 10
            e
.Graphics.DrawLine(Pens.Green4530 + (30 x), 5030 + (30 x))
 
           e.Graphics.DrawLine(Pens.Green50 + (30 x), 2550 + (30 x), 30)
 
       Next

        Dim m_pens 
As Pen() = New Pen() {Pens.RedPens.BluePens.GreenPens.Red}
 
       Dim m_GraphicsSave As GraphicsState e.Graphics.Save()

 
       Dim m_MatrixCloned As Matrix m_matrix.Clone()

 
       m_MatrixCloned.Translate(5030)

 
       e.Graphics.Transform m_MatrixCloned

        
'-----------------------------------------------------------------------

        Dim employ1 As Integer = 300
        Dim employ1Brush As New SolidBrush(Color.FromArgb(150, Color.Red))

        Dim employ2 As Integer = 300 / 2
        Dim employ2Brush As New SolidBrush(Color.FromArgb(150, Color.Blue))

        Dim employ3 As Integer = 300 / 4
        Dim employ3Brush As New SolidBrush(Color.FromArgb(150, Color.Green))

        Dim employ4 As Integer = 200
        Dim employ4Brush As New SolidBrush(Color.FromArgb(150, Color.Yellow))

        Dim employ5 As Integer = 250
        Dim employ5Brush As New SolidBrush(Color.FromArgb(150, Color.Purple))

        Dim employ6 As Integer = 150
        Dim employ6Brush As New SolidBrush(Color.FromArgb(150, Color.Maroon))

        Dim employ7 As Integer = 275
        Dim employ7Brush As New SolidBrush(Color.FromArgb(150, Color.Khaki))


        e.Graphics.DrawRectangle(Pens.Black, 25, 0, 10, employ1)
        e.Graphics.FillRectangle(employ1Brush, New Rectangle(25, 0, 10, employ1))

        e.Graphics.DrawRectangle(Pens.Black, 55, 0, 10, employ2)
        e.Graphics.FillRectangle(employ2Brush, New Rectangle(55, 0, 10, employ2))

        e.Graphics.DrawRectangle(Pens.Black, 85, 0, 10, employ3)
        e.Graphics.FillRectangle(employ3Brush, New Rectangle(85, 0, 10, employ3))

        e.Graphics.DrawRectangle(Pens.Black, 115, 0, 10, employ4)
        e.Graphics.FillRectangle(employ4Brush, New Rectangle(115, 0, 10, employ4))

        e.Graphics.DrawRectangle(Pens.Black, 145, 0, 10, employ5)
        e.Graphics.FillRectangle(employ5Brush, New Rectangle(145, 0, 10, employ5))

        e.Graphics.DrawRectangle(Pens.Black, 175, 0, 10, employ6)
        e.Graphics.FillRectangle(employ6Brush, New Rectangle(175, 0, 10, employ6))

        e.Graphics.DrawRectangle(Pens.Black, 205, 0, 10, employ7)
        e.Graphics.FillRectangle(employ7Brush, New Rectangle(205, 0, 10, employ7))

        '
-----------------------------------------------------------------------

 
       e.Graphics.Restore(m_GraphicsSave)

 
       For i As Integer 10 To 100 Step 10

            m_GraphicsSave 
e.Graphics.Save()
 
           Dim m_MatrixOffsetY As New Matrix(100, -12530 + (10 30) + (Font.Height 2))

 
           m_MatrixCloned m_matrix.Clone()
 
           m_MatrixCloned.Multiply(m_MatrixOffsetY)

 
           e.Graphics.Transform m_MatrixCloned
            e
.Graphics.DrawString(i.ToString(), FontBrushes.Black00StringFormat.GenericTypographic)
 
           e.Graphics.Restore(m_GraphicsSave)

 
       Next

        For s 
As Integer 10 To 100 Step 10

            m_GraphicsSave 
e.Graphics.Save()
 
           Dim m_matrixOffsetX As New Matrix(100, -130 + (10 30) + (Font.Height 2), 25)
 
           m_MatrixCloned m_matrix.Clone()
 
           m_MatrixCloned.Multiply(m_matrixOffsetX)
 
           e.Graphics.Transform m_MatrixCloned

            e
.Graphics.DrawString(s.ToString(), FontBrushes.Black00StringFormat.GenericTypographic)
 
           e.Graphics.Restore(m_GraphicsSave)

 
       Next

    End Sub 
الرد }}}
تم الشكر بواسطة:


الردود في هذا الموضوع
مطلوب التعديل علي الكود التالي - بواسطة محمد اسماعيل - 11-10-17, 03:22 AM


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم