تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
كود اظهار عنوان الفورم فى المنتصف
#1
السلام عليكم و رحمة الله
اقدم لكم هذا الكود وهو لجعل عنوان الفورم فى منتصفه
اولاً: نكتب هذا الكود  
Public Class Form1

    Private Sub CenterMe()
        Dim g As Graphics = Me.CreateGraphics()
        Dim startingPoint As Double = (Me.Width / 2) - (g.MeasureString(Me.Text.Trim, Me.Font).Width / 2)
        Dim widthOfASpace As Double = g.MeasureString(" ", Me.Font).Width
        Dim tmp As String = " "
        Dim tmpWidth As Double = 0
        Do
            tmp += " "
            tmpWidth += widthOfASpace
        Loop While (tmpWidth + widthOfASpace) < startingPoint

        Me.Text = tmp & Me.Text.Trim & tmp

        Me.Refresh()
    End Sub
ثم فى حدث formload نكتب هذا الكود
 CenterMe()
كذلك فى حدث formresize نكتبه مرة اخرى
 CenterMe()

ولكن لى سؤال بسيط هنا اريد ان اضع هذا الكود فى موديول مثلا لاستخدمه فى جميع نماذج المشروع ما هى الطريقة؟
مع خالص شكرى
الرد }}}
تم الشكر بواسطة:
#2
تستطيع استخدامه من اي كلاس بشرط أنه يكتب في صورة  Shared روتين
و أيضا بشرط أن تمرر الفورم او الكونترول من خلال الروتين CenterMe

عليك أن تلاحظ أن الكود به خطأ في شكل ظهور التكست لأن اسم الفورم يظهر بجانبه مجموعة منComma

PHP كود :
Public Shared CenterMe(anyform as Form)
End Sub 
الرد }}}
تم الشكر بواسطة:
#3
(12-03-16, 09:09 PM)silverlight كتب : تستطيع استخدامه من اي كلاس بشرط أنه يكتب في صورة  Shared روتين
و أيضا بشرط أن تمرر الفورم او الكونترول من خلال الروتين CenterMe

عليك أن تلاحظ أن الكود به خطأ في شكل ظهور التكست لأن اسم الفورم يظهر بجانبه مجموعة منComma

PHP كود :
Public Shared CenterMe(anyform as Form)
End Sub 

اسف اخى ممكن توضيح اكثر
الرد }}}
تم الشكر بواسطة:
#4
مثل هذا

PHP كود :
Friend NotInheritable Class FormUtility

    Public Shared Sub CeneterFormText
(anyform As Form)

 
       Dim g As Graphics anyform.CreateGraphics()
 
       Dim startingPoint As Double = (anyform.Width 2) - (g.MeasureString(anyform.Text.Trimanyform.Font).Width 2)
 
       Dim widthOfASpace As Double g.MeasureString(" "anyform.Font).Width
        Dim tmp 
As String " "
 
       Dim tmpWidth As Double 0
        Do
            tmp 
+= " "
 
           tmpWidth += widthOfASpace
        Loop 
While (tmpWidth widthOfASpace) < startingPoint

        anyform
.Text tmp anyform.Text.Trim tmp

        anyform
.Refresh()
 
   End Sub

End 
Class 


و الاستخدام مثل هذا

PHP كود :
  FormUtility.CeneterFormText(Me

بس ياريت تخللي بالك ان الكود الأصلي به اخطاء
أيضا يجب عمل dispose للجرافكس
الرد }}}
تم الشكر بواسطة: salah mansour , khodor1985 , عدنان الشمري
#5
شكرا جزيلا لاستاذنا الفاضل الكود تمام جزاك الله خيرا
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  مشكلة في عرض الفورم بالحجم المحدد مصمم هاوي 1 248 29-09-25, 03:17 AM
آخر رد: مصمم هاوي
  [VB.NET] حفظ تنسيق الفورم ثم تطبيقة علي فورم اخر فيجوال بيسك abo ragab 7 1,212 09-07-25, 12:45 AM
آخر رد: abo ragab
  إغلاق الفورم مع حذف جميع البيانات الموجودة به صالح عبدالله 10 1,039 19-04-25, 08:54 PM
آخر رد: Kamil
  كيف يمكن تحريك الفورم بأستخدام زر heem1986 2 587 30-03-25, 01:58 AM
آخر رد: heem1986
  [سؤال] تغيير الفورم الرئيسي عند تشغيل البرنامج في Visual Studio مع .NET 8؟ silverlord 2 650 09-03-25, 03:52 AM
آخر رد: silverlord
  ماهو سبب اغلاق الفورم صالح عبدالله 2 513 26-02-25, 02:40 PM
آخر رد: صالح عبدالله
  استفسار عن تنسيق الفورم في حالة تغيرالفورم من وضع العادي الي التكبير fireswored1 4 823 22-01-25, 09:04 PM
آخر رد: fireswored1
  احتاج مساعدة في اظهار الصورة على PictureBox sloom00 2 389 31-12-24, 11:29 PM
آخر رد: sloom00
  تأخر فتح الفورم بالبنال لمدة طويلة F.H.M 1 350 13-11-24, 08:27 AM
آخر رد: F.H.M
  لماذا يتغير حجم الفورم تلقائي عند فتح الاتصال بقاعدة البيانات؟ ABDULLAH HASSAN 4 519 24-09-24, 03:57 AM
آخر رد: Taha Okla

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


يقوم بقرائة الموضوع: