منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
كيف يمكن انشي الى text ضل عن طريق البرمجة ؟ - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم أسئلة واستفسارات الأعضاء - المنتدى القديم (http://vb4arb.com/vb/forumdisplay.php?fid=94)
+--- قسم : قسم Visual Basic 6 وما قبله (http://vb4arb.com/vb/forumdisplay.php?fid=167)
+--- الموضوع : كيف يمكن انشي الى text ضل عن طريق البرمجة ؟ (/showthread.php?tid=9334)



كيف يمكن انشي الى text ضل عن طريق البرمجة ؟ - softmail8 - 19-06-13

كيف يمكن انشي الى text ضل عن طريق البرمجة ؟
والله يحفظكم ويرعاكم


كيف يمكن انشي الى text ضل عن طريق البرمجة ؟ - محمود اكرم - 19-06-13

السلام عليكم
هذا الكود هو المطلوب
علما بان هذا الكود يعمل على تصنيع صندوق نص ضع الكود داخل زر معين
On Error Resume Next
Set txtObj = Controls.Add("VB.textbox", "txtObj")
With txtObj
.Visible = True
.RightToLeft = True
.Alignment = 2
.Width = 2000
.Text = "السلام عليكم"
.Top = 2000
.Left = 1000
End With
End Sub

Private Sub Form_Load()
Set btnObj = Controls.Add("VB.CommandButton", "btnObj")
With btnObj
.Visible = True
.Width = 2000
.Caption = "Click"
.Top = 1000
.Left = 1000
End With

علما بانك يجب ان تضع هذا الكود في القسم العام للأحداث
Private WithEvents txtObj As TextBox


كيف يمكن انشي الى text ضل عن طريق البرمجة ؟ - ناجي إبراهيم - 20-06-13

السلام عليكم...

أعتقد أن الأخ يسأل عن كيفية إنشاء ظلال لمربعات النص. إذا كان الأمر كذلك فإن الحل يكون كالتالي:

1. ضع الكود التالي في Module:
كود :
' ترقيم لتحديد اتجاه الظل
Public Enum EShadowPosition
    spRightBottom    ' إلي اليمين و الأسفل
    spRightTop    ' إلى اليمين و الأعلى
    spLeftTop    ' إلى اليسار و الأعلى
    spLeftBottom    ' إلى اليسار و الأسفل
End Enum

' دالة خاصة لتحديد وحدة القياس
Private Function ContainerScaleMode(AContainer As Object) As ScaleModeConstants
    On Error GoTo ContainerScaleMode_Err
    
    ContainerScaleMode = AContainer.ScaleMode
    Exit Function
    
ContainerScaleMode_Err:
    Err.Clear
    ContainerScaleMode = vbTwips
End Function

' إجراء إضافة الظلال - انظر شرح البارامترات فيما بعد
Public Sub AddShadow( _
                     AForm As Form, _
                     Optional AShadowColor As OLE_COLOR = &HC0C0C0, _
                     Optional ADistanceInPixels As Long = 2, _
                     Optional MakeBoxFlat As Boolean = True, _
                     Optional AShadowPosition As EShadowPosition = spRightBottom _
                    )
    Dim AControl As Control
    Dim Index As Long
    Dim AShape As Shape
    Dim ALeftFactor As Long
    Dim ATopFactor As Long
    
    If (AShadowPosition = spRightBottom) Or (AShadowPosition = spRightTop) Then
        ALeftFactor = 1
    Else
        ALeftFactor = -1
    End If
    
    If (AShadowPosition = spLeftBottom) Or (AShadowPosition = spRightBottom) Then
        ATopFactor = 1
    Else
        ATopFactor = -1
    End If
    
    Index = 0
    For Each AControl In AForm.Controls
        If TypeOf AControl Is TextBox Then
            If MakeBoxFlat Then AControl.Appearance = 0    ' Flat
            Index = Index + 1
            Set AShape = AForm.Controls.Add("VB.Shape", "shpShadow" & CStr(Index), AControl.Container)
            With AShape
                .BackStyle = 1    ' Opaque
                .BackColor = AShadowColor
                .BorderColor = AShadowColor
                .Move AControl.Left + AForm.ScaleX(ADistanceInPixels, vbPixels, ContainerScaleMode(AControl.Container)) * ALeftFactor, _
                      AControl.Top + AForm.ScaleY(ADistanceInPixels, vbPixels, ContainerScaleMode(AControl.Container)) * ATopFactor, _
                      AControl.Width, AControl.Height
                .Visible = True
            End With
        End If
    Next AControl
End Sub

* بارامترا الإجراء:
= البارامتر AForm: الـ Form المحتوية على مربعات النص. هذا هو البارامتر الوحيد المطلوب (الإجباري).
= البارمتر AShadowColor: بارامتر اختياري يحدد لون الظل. الافتراضي هو اللون الفضي.
= البارامتر ADistanceInPixels: بارمتر اختياري يحدد بُعد الظل عن مربع النص بوحدة البكسل. الافتراضي 2 بكسل.
= البارامتر MakeBoxFlat: بارامتر اختياري يحدد ما إذا سيتم جعل مربع النص يبدو مسطحاً (يجعل الظل بظهر بشكل أوضح). الافتراضي True، أي نعم.
= البارامتر AShadowPosition: بارامتر اختياري يحدد اتجاه الظل حسب القيم الواردة في الترقيم EShadowPosition. الافتراض هو spRightBottom أي نحو اليمين و الأسفل.

* يتم استدعاء الإجراء AddShadow في الحدث Form_Load للنافذة. أمثلة:

= إنشاء ظلال بالقيم الافتراضية:
كود :
Private Sub Form_Load()
    AddShadow Me
End Sub

= إنشاء ظلال تبعد 6 بكسل عن مربعات النص مع استعمال بقية القيم الافتراضية:
كود :
Private Sub Form_Load()
    AddShadow Me, , 6
End Sub

= إنشاء ظلال بلون أزرق داكن و تبعد عن مربعات النص بمقدار 4 بكسل في اتجاه أعلى اليسار:
كود :
Private Sub Form_Load()
    AddShadow Me, &H800000, 4, True, spLeftTop
End Sub

= نرجو الاستفادة و السلام.


كيف يمكن انشي الى text ضل عن طريق البرمجة ؟ - softmail8 - 20-06-13

لكم من الف شكر وتقدير لك استاذي العزيز والله يحفظكم ويرعاكم