منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : Generic Delegates - Func and Action
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
شكرااااااا
انا اسف انا قليل الخبرة فى GDI+

كود الشاففية يوضع قبل الفور الاولى ام بعدها
ممكن الكود كملا
ملحوظة فكرة اشفافية هنا مبنية علي ان لون خلفية الصورة يكون مبنيي علي لون خلفية الفورم او علي لون خلفية ToolBar 

PHP كود :
       Dim img As Bitmap My.Resources.stripImage
        Dim counter 
As Integer img.Width img.Height
        Dim r 
As Rectangle = New Rectangle(00img.Heightimg.Height)
 
       For i As Integer 0 To counter 1
            Dim current 
As Bitmap img.Clone(rimg.PixelFormat)
 
           current.MakeTransparent(Me.BackColor)
 
           images.Add(current)
 
           r.+= img.Height
        Next

        PictureBox1
.Image images(0)
 
       PictureBox2.Image images(1)
 
       PictureBox3.Image images(2)
 
       PictureBox4.Image images(3)
 
       PictureBox5.Image images(4)
 
       PictureBox6.Image images(5)
 
       PictureBox7.Image images(6)
 
       PictureBox8.Image images(7
شكرا على الرد وعلى الكود
ممكن توجهنى الى افضل طريق لتعلم GDI+
والكتب
وثانى كيف اضيف خاصية تقسيم الصورة الى اداةImageList1

انا حولت الوراثة من الادة ImageList ولكن لا تقيل التوريث
ما ذا افعل


اى عند اختيار الصورة تقسم الصورة المجمعة الى صور فردية

اسف على الازعاج
عليك أن تضيف ImageList الي الفورم
ثم تستخدم نفس الكود السابق خاصة ان ImageList بها صفة اسمها Images و هي عبارة عن collection

و الكود في تلك الحالة سيكون شكله كالتالي

PHP كود :
ImageList1.TransparentColor Me.BackColor

        Dim img 
As Bitmap My.Resources.stripImage
        Dim counter 
As Integer img.Width img.Height
        Dim r 
As Rectangle = New Rectangle(00img.Heightimg.Height)
 
       For i As Integer 0 To counter 1
            Dim current 
As Bitmap img.Clone(rimg.PixelFormat)
 
           current.MakeTransparent(Me.BackColor)
 
           ImageList1.Images.Add(current)
 
           r.+= img.Height
        Next

        PictureBox1
.Image ImageList1.Images(0)
 
       PictureBox2.Image ImageList1.Images(1)
 
       PictureBox3.Image ImageList1.Images(2)
 
       PictureBox4.Image ImageList1.Images(3)
 
       PictureBox5.Image ImageList1.Images(4)
 
       PictureBox6.Image ImageList1.Images(5)
 
       PictureBox7.Image ImageList1.Images(6)
 
       PictureBox8.Image ImageList1.Images(7


بخصوص انك تتعلم الجرافكس عليك بالقراءة و التطبيق و تحديدا عليك ان تفهم جميع الكلاسات الموجودة في فضاء الاسماء System.Drawing و مشتقاته


الكتب الخاصة بتعليم الجرافكس قليلة جدا و اغليها يركز علي شرح فضاء الاسماء System.Drawing بشكل عام
ولكي تتعلم فعلا عليك أن تقرأ و تطبق الافكار التي تقرأ عنها حتي تتعلم الاساسيات اولا

بعد ذلك سيصبح الأمر أسهل و اذا احتجت اي شئ يمكنك ان تسأل و انا سوف أجاوب اسئلتك او علي الاقل  ستجد من يجيب علي سؤالك من الاخوة المبرمجين

لكن لا تعتمد علي هذا كثيرا لأن الجرافكس لها اسرارها التي من الصعب ان تجد من يوضحها لك بسهولة
فهي بيزنس مهم و القلائل فقط هم من يجيدونها بقوة

أخيرا بخصوص توريث ImageLisr ستجد بعض الكلاسات في الدوت نت لا يمكن توريثها و عليك ان تبني Wrapper يدور حولها
والكود الخاص بذلك سيكون شئ من هذا القبيل

PHP كود :
Public Class CairoImageList
    Implements IDisposable

    Private _list 
As ImageList

    Public Sub 
New()
 
       Me.New(CType(NothingImageList))
 
   End Sub
    Public Sub 
New(list As ImageList)
 
       _list = list
 
   End Sub

    Protected ReadOnly Property ImageList 
As ImageList
        Get
            Return _list
        End Get
    End Property

    Protected Overloads Sub Ondisposed
()
 
       If _list IsNot Nothing Then
            _list
.Dispose()
 
           _list Nothing
        End 
If
 
   End Sub
#Region "IDisposable Support"
 
   Private disposedValue As Boolean ' To detect redundant calls

    ' 
IDisposable
    Protected Overridable Sub Dispose
(disposing As Boolean)
 
       If disposedValue Then
            Return
        End 
If

 
       If disposing Then
            
' TODO: dispose managed state (managed objects).
            Ondisposed()
        End If

            ' 
TODOfree unmanaged resources (unmanaged objects) and override Finalize() below.
 
           ' TODO: set large fields to null.
            disposedValue = True
    End Sub

    ' 
TODOoverride Finalize() only if Dispose(disposing As Booleanabove has code to free unmanaged resources.
 
   'Protected Overrides Sub Finalize()
    ' 
   ' Do not change this code.  Put cleanup code in Dispose(disposing As Boolean) above.
    ' 
   Dispose(False)
 
   '    MyBase.Finalize()
    '
End Sub

    
' This code added by Visual Basic to correctly implement the disposable pattern.
    Public Sub Dispose() Implements IDisposable.Dispose
        ' 
Do not change this code Put cleanup code in Dispose(disposing As Booleanabove.
 
       Dispose(True)
 
       ' TODO: uncomment the following line if Finalize() is overridden above.
        ' 
GC.SuppressFinalize(Me)
 
   End Sub
#End Region
End Class 
شكرا على التجاوب واسف على الازعاج
شكرا لكم جميعا 








شكرا جدا  على الموضوع الاكثر من رائع










_______________________________________________
التسامح الحق لا يستلزم نسيان الماضي بالكامل..

سينما كلوب
ايجي بست
شاهد فور يو

سيرا اون لاين


مشاهدة فيلم
شكرا جدا  على الموضوع الاكثر من رائع

ماي ايجي MyEgy
الصفحات : 1 2