PDA

View Full Version : استفاده از تایمر برای نوشتن نام فرم



elmira_63
دوشنبه 04 شهریور 1387, 10:04 صبح
سلام
من میخوام property تکست فرمم رو به وسیله یه تایمر اضافه و کمش کنم
مثلا اگه اسم فرمم "سیستم نرم افزاری زبان" باشه میخوام یه حرف یه حرف اضافه بشه وقتی به آخر رسید دوتا چشمک بزنه دوباره یه حرف یه حرف کم بشه تا وقتی که نام فرم خالی بشه و دوباره روز از نو و زوری از نو
نحوه شرط گذاشتن و این هاشو میتونم درست کنم ولی نمی دونم چه طوری یه حرف از یه تکست کم کنم یا وقتی که کم کرد چه طوری اضافه کنم
نمی دونم منظورم رو فهمیدید یا نه فقط این کارو نمی خوام برای یه اسم خاص انجام بدم میخوام جوری باشه که هر چی برای اسم فرمم انتخاب کردم همین طوری عمل کنه

Sharif Lotfi
دوشنبه 04 شهریور 1387, 10:24 صبح
در تابع Timer_Tick از توابع Left و يا Right استفاده كن و طول رشته خروجي را با طول كل رشته مورد نظر براي كپشن چك كن - در هر اجرا مقدار داخل تابع Right يا Left رو برابر طول كپشن موجود باضافه يك يا منهاي يك بگير .

elmira_63
دوشنبه 04 شهریور 1387, 11:07 صبح
تا اونجایی که من بلدم تابع left و right موقعیت یه object رو تعیین می کنه
مثلا form1.left=120
ممکنه یکم بیشتر توضیح بدین؟
ببینید من نمی خوام خود جمله رو چپ و راست ببرم تا جایی که حروفش محو بشه یا ظاهر بشه می خوام همون جایی که هست این عمل انجام بشه در ضمن الان اومدم یه label گذاشتم روی فرمم میخوام این کارو با این label انجام بدم

mostafaaa
دوشنبه 04 شهریور 1387, 12:21 عصر
تا اونجایی که من بلدم تابع left و right موقعیت یه object رو تعیین می کنه
مثلا form1.left=120
ممکنه یکم بیشتر توضیح بدین؟
ببینید من نمی خوام خود جمله رو چپ و راست ببرم تا جایی که حروفش محو بشه یا ظاهر بشه می خوام همون جایی که هست این عمل انجام بشه در ضمن الان اومدم یه label گذاشتم روی فرمم میخوام این کارو با این label انجام بدم
منظور دوستمون متدهای تابع String هستش و به این شکل استفاده میشن

Strings.Left(str as String,Lenght as Integer)

Sharif Lotfi
دوشنبه 04 شهریور 1387, 12:26 عصر
با اين قطعه كد همه چي دستگيرتون ميشه . تابع Left و Right توي Namespace زير هستن
Microsoft.VisualBasic
همچنبن ميتونين مثل كد زير ازشون استفاده كنين . مثلا در كد زير 6 كاراكتر از سمت راست رشته رو برميگردونه .

Dim TestString As String = "Hello World!"
' Returns "World!".
Dim subString As String = Microsoft.VisualBasic.Right(TestString, 6)

mostafaaa
دوشنبه 04 شهریور 1387, 12:29 عصر
به این مثال توجه کن

Public Class Form1
Dim I As Integer = 1
Dim str As String
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
str = "Your Text Here"
Timer1.Enabled = True
End Sub


Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Dim Lenght As Integer = str.Length
If I = Lenght Then Timer1.Enabled = False
Label1.Text = Strings.Left(str, I)
I += 1
End Sub
End Class

reza6384
دوشنبه 04 شهریور 1387, 12:29 عصر
این کار رو هم می تونین انجام بدین



Dim Company as string
Dim i as integer

sub form_load()
Company = = "MyCompanyName"
i = 0
me.text = ""
timer1.enabled = true
end sub

Sub Timer_Tick(......)
if i <= Company.Lenght - 1 then
Me.Text += Company.Chars(i)
end if
End Sub

Sharif Lotfi
دوشنبه 04 شهریور 1387, 12:33 عصر
در تابع Form_Load كد شروع تايمر رو فراموش نكني
Timer1.Start

reza6384
دوشنبه 04 شهریور 1387, 12:41 عصر
این هم از اشتباهات لپی بود، ویرایش کردم. ممنون.