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

نسخة كاملة : لعمل التكست بوكسText box , Button بشكل دائرى الحواف
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ورحمة الله 

لعمل التكست بوكسText box , Button بشكل دائرى الحواف وممكن تجرب اى tool 




  1. عمل Class ,Form ثم كتابة هذ الكود 
    Imports SystemImports System.DrawingImports System.Runtime.InteropServicesImports System.ComponentModelPublic Class RoundButton    Inherits Button    <DllImport("gdi32.dll", entrypoint:="CreateRoundRectRgn")>    Private Shared Function CreateRoundButton(ByVal nLeftRect As Integer, ByVal nTopRec As Integer,                                               ByVal nRightRec As Integer, ByVal nBottomRec As Integer,                                               ByVal nHighRec As Integer, ByVal nWidthRec As Integer) As IntPtr    End Function    Protected Overrides Sub OnCreateControl()        MyBase.OnCreateControl()        Me.Region = System.Drawing.Region.FromHrgn(CreateRoundButton(2, 3, Me.Width, Me.Height, 20, 20))    End Sub    Protected Overrides Sub OnResize(e As EventArgs)        MyBase.OnResize(e)        Me.Region = System.Drawing.Region.FromHrgn(CreateRoundButton(2, 3, Me.Width, Me.Height, 20, 20))    End SubEnd Class
  2. ستجد ان RoundButton اضيفت الى Toolbox 
  3. اذا اردت عمل اى Tool اخر يكفى تغيير اسم [b]Button الى Textbox او الى Label[/b]
    وشكرا
وعليكم السلام ورحمة الله وبركاته

نفس الكود ولكن :
- بعد تعديل بسيط على الحواف.
- وبالتنسيق ضمن مربع عرض الأكواد - تسهيلاً لنسخ الأكواد منه أو عرضها :

كود :
Imports System
Imports System.Drawing
Imports System.Runtime.InteropServices
Imports System.ComponentModel

Public Class RoundButton
   Inherits Button

   <DllImport("gdi32.dll", EntryPoint:="CreateRoundRectRgn")>
   Private Shared Function CreateRoundButton(ByVal nLeftRect As Integer, ByVal nTopRec As Integer, ByVal nRightRec As Integer, ByVal nBottomRec As Integer, ByVal nHighRec As Integer, ByVal nWidthRec As Integer) As IntPtr

   End Function

   Protected Overrides Sub OnCreateControl()
       MyBase.OnCreateControl()
       Me.Region = System.Drawing.Region.FromHrgn(CreateRoundButton(2, 2, Me.Width - 2, Me.Height - 2, 20, 20))
   End Sub

   Protected Overrides Sub OnResize(e As EventArgs)
       MyBase.OnResize(e)
       Me.Region = System.Drawing.Region.FromHrgn(CreateRoundButton(2, 2, Me.Width - 2, Me.Height - 2, 20, 20))
   End Sub

End Class
طيب فى سؤال 


اذا انا عايز اعمل التكست بوكس او البوتون من جنب دائرى الحواف ومن جانب اخر الحواف ب صفر يعنى غير دائرية
كيف يكون الكود؟ اخى Taha Okla