سلام
يك سوال از VB درمورد backcolor داشتم !
چطور ميشه اسم رنگي كه با inputbox ميگيريم براي form1.backcolor قرار بديم ؟
مثال : vbRed رو كه كه نوشتيم (تو inputbox) رنگ فورم رو عوض كنه !
هر كاري كردم نشده حالا مي خواستم ببينم امكانش هست ؟
ممنون
Private Declare Function [B]EbExecuteLine[/B] Lib "vba6.dll" (ByVal pStringToExec As Long, ByVal Foo1 As Long, ByVal Foo2 As Long, ByVal fCheckOnly As Long) As Long
Private EValValue As Double
Private Function [B]EVal[/B](ByVal Text As String) As Double
Text = "Form1.EValValue = " & Text
EbExecuteLine StrPtr(Text), 0, 0, False
EVal = EValValue
End Function
Private Sub Form_Load()
Form1.BackColor = [B]EVal[/B]("vbRed")
End Sub
Private Sub Form_Load()
Form1.BackColor = [B]ColorToValue[/B]("vbRed")
End Sub
Private Function [B]ColorToValue[/B](ByVal Color As String) As ColorConstants
Select Case LCase(Color)
Case "vbred"
ColorToValue = vbRed
Case "vbblack"
ColorToValue = vbBlack
Case "vbgreen"
ColorToValue = vbGreen
Case "vbyellow"
ColorToValue = vbYellow
Case "vbblue"
ColorToValue = vbBlue
Case "vbmagenta"
ColorToValue = vbMagenta
Case "vbcyan"
ColorToValue = vbCyan
Case "vbwhite"
ColorToValue = vbWhite
End Select
End Function