ورود

View Full Version : مبتدی: خطای Block If without End If در دستورات شرطی



conter
سه شنبه 24 فروردین 1389, 17:09 عصر
سلام به هم اساتید میشه ایراد این source code رو بگید هنگام اجرا این خطا رو میده ؟
if block with out end if
با اینکه من end if رو گذاشتم اینم سورس کد:


() Private Sub Command1_Click
Select Case Text2.Text
Case "arial"
Text1.Font = arial
Case "tahoma"
Text1.Font = tahoma
End Select
If ITALIC.Value = True Then Text1.FontItalic = True
Else: Text1.Font = NORMAl
End If
If BOLD.Value = True Then Text1.FontBold = True
Else: Text1.Font = NORMAl
End If
End Sub

کار برنامه هم این هستش که با انتخاب یکی از گزینه های bold یا italic از داخل فریم و نوشتن نوع فونت داخل textbox 2 فونت textbox و حالت نوشته رو تغییر بده ؟؟؟

daniyal_1363
سه شنبه 24 فروردین 1389, 17:32 عصر
شما در فرمان IF اگر بعد از Then دستور خودت رو نوشتی دیگه نمی تونی بعد از اون از Else و End if استفاده کنی - کد درست به صورت پایین نوشته میشه





Private Sub Command1_Click()
Select Case Text2.Text
Case "arial"
Text2.Font = arial
Case "tahoma"
Text2.Font = tahoma
End Select
If Font.Italic = True Then
Text2.FontItalic = True
Else: Text2.Font = Normal

End If
If Font.Bold = True Then
Text2.FontBold = True
Else: Text2.Font = Normal

End If
End Sub


در ضمن کد رو به این صورت هم میشه نوشت




Private Sub Command1_Click()
Select Case Text2.Text
Case "arial"
Text2.Font = arial
Case "tahoma"
Text2.Font = tahoma
End Select
If Font.Italic = True Then
Text2.FontItalic = True
ElseIf Font.Bold = True Then
Text2.FontBold = True
Else
Text2.Font = Normal
End If
End Sub

conter
سه شنبه 24 فروردین 1389, 18:35 عصر
ممنون عزیز من رفتم روش کار کردم و 2 تا گزینه دیگه بهش اضافه کردم که بشه سایز فونت هم تغییر داد و حسابی باحال شد :



Select Case text2.Text
Case "arial"
text2.Font = arial
Case "tahoma"
text2.Font = tahoma
End Select
If ITALIC.Value = True Then
Text1.FontItalic = True
Else: Text1.Font = Normal
End If

If BOLD.Value = True Then
Text1.FontBold = True
Else: Text1.Font = Normal
End If
If Option1.Value = True Then
Text1.FontSize = 10
Else: Text1.FontSize = 20
End If


راستی یک سوال من واسه قسمت فریم میخواستم دو تا فریم باشه که تو یکی bold انتخاب بشه و توی یکی italic یعنی داخل هر فریم یک normal باشه که حق انتخاب بین نرمال و bold , italic داشته باشیم اما وقتی دو تا نرمال میگذارم خطا میده میشه کمکم کنی؟

daniyal_1363
چهارشنبه 25 فروردین 1389, 18:07 عصر
ممنون عزیز من رفتم روش کار کردم و 2 تا گزینه دیگه بهش اضافه کردم که بشه سایز فونت هم تغییر داد و حسابی باحال شد :


راستی یک سوال من واسه قسمت فریم میخواستم دو تا فریم باشه که تو یکی bold انتخاب بشه و توی یکی italic یعنی داخل هر فریم یک normal باشه که حق انتخاب بین نرمال و bold , italic داشته باشیم اما وقتی دو تا نرمال میگذارم خطا میده میشه کمکم کنی؟


بیا عزیز دل برادر برات تقریبا همه چیز رو نوشتم گذاشتم تا زحمتت کمتر بشه

conter
پنج شنبه 26 فروردین 1389, 10:53 صبح
ممنون عزیز حالا میشه یک توضیح مختصر در مورد کد هات بدی من بعضی هاشو اصلا نفهمیدم

daniyal_1363
پنج شنبه 26 فروردین 1389, 20:20 عصر
Private Sub Command1_Click()
'--------------------------------------------------
CommonDialog1.FontName = Text3.Font.Name
CommonDialog1.FontSize = Text3.Font.Size
CommonDialog1.FontBold = Text3.Font.Bold
CommonDialog1.FontItalic = Text3.Font.Italic
CommonDialog1.FontUnderline = Text3.Font.Underline
'----------------------------------------------------
در قسمت بالا تنظیمات فونت برای CommonDialog1 فرستاده میشه
یعنی فونت انتخابی در CommonDialog1 و Text3 یکی میشه (البته همه تنظیماتش نه)


'---------------------------------------------------------
CommonDialog1.ShowFont
'---------------------------------------------------------
در این قسمت پنجره CommonDialog1 نمایش داده میشه




'--------------------------------------------------------------
Text3.Font.Name = CommonDialog1.FontName
Text3.Font.Size = CommonDialog1.FontSize
Text3.Font.Bold = CommonDialog1.FontBold
Text3.Font.Italic = CommonDialog1.FontItalic
Text3.Font.Underline = CommonDialog1.FontUnderline
'------------------------------------------------------------------
بعد از انتخاب فونت و زدن دکمه ok تنظیماتی که شما در CommonDialog1
انتخاب کردین روی Text3 اعمال میشه



End Sub




Private Sub Command2_Click()
'On Error Resume Next


'----------------------------------
Text3.Font = text1.Text
'----------------------------------
فونت Text3 به فونتی که در Text1 تایپ کردین تبدیل میشه



'-------------------------------------------
Text3.Font.Size = Val(Text2.Text)
'---------------------------------------------
سایز فونت Text3 سایز شماره ای میشه که در Text2 تایپ کردین میشه


'---------------------------------------------
If Option1.Value = True Then
Text3.Font.Bold = False
Text3.Font.Italic = False
ElseIf Option2.Value = True Then
Text3.Font.Bold = True
ElseIf Option3.Value = True Then
Text3.Font.Italic = True
End If
'---------------------------------------------
اینم که واضح دیگه ، اگه Normal انتخاب شده باشه Bold و Italic فالس میشه
بقیشم واسه تعیین Bold یا Italic شدن فونت



'-----------------------------------
Select Case Check1.Value
Case 0
Text3.Font.Underline = False
Case 1
Text3.Font.Underline = True
End Select
'-----------------------------------
انتخاب خط زیرین فونت


End Sub