. Switch یک تعداد آرگومان که تعدادشون باید زوج باشه میگیره به طوری که :
آرگومان های فرد( اولی ، سومی ، پنجمی و ...) باید یک عبارت باشن(یا میشه گفت عبارت در نظر گرفته میشن)
آرگومان های زوج هم باید مقدار باشن(یا میشه گفت مقدار در نظر گرفته میشن)
تابع میاد به ترتیب تک تک آرگومان های فرد رو مورد بررسی قرار میده.به اولین آرگومانی که ارزشش درست (True) باشه که رسید آرگومان بعد از اون(که یک مقدار هست) رو برمیگردونه.
مثلا فرض کنین شما میخواهین یک تابعی درست کنین که یک عدد از 1 تا 5 بگیره و معادل رشته ای اون رو (“One” ، “Two” و ...) رو برگردونه.با استفاده از این تابع شما میتونین اینطوری عمل کنین :
Function nToS(Byval n as Integer) As String
If n > 5 Or n < 1 Then Exit Function
nToS = Switch(n=1,”One”,n=2,”Two”,n=3,”Three”,n=4,”Four”,n=5,”Five”)
End Function
کد این تابع اول چک میکنه که عددی که بهش داده شده بین 1 تا 5 هست یا نه.اگه نبود از تابع خارج میشه.
اما اگه بود با استفاده از تابع Swich مقدار ها ی مختلفی که n میتونه داشته باشه رو چک میکنه و مقدار معادل رشته ای رو برمیگردونه.مثلا nToS(4)=”Four” .
162. SYD
163. Tan این هم تانژانت یک زاویه (بر حسب رادیان) رو برمیگردونه.
164. TextHeight یک رشته میگیره و ارتفاعی رو که اون رشته اشغال میکنه رو باتوجه به فونت فرم و واحد فرم(ScaleMode) برمیگردونه.مثلا اگه واحد و فونت فرم پیشفرض باشه :
TextHeight(“m”) = TextHeight(“MA”) = 195
یعنی اینکه ارتفاعی که اشغال میکنه به طول رشته و یا کوچک و بزرگ بودن کاراکتر ها بستگی نداره(که این هم بدیهیه!)
165. TextWidth کار تابع قبلی رو برای عرض یک رشته انجام میده.با این فرق که همونطور که میدونیم با تغییر تعداد کاراکتر یک رشته و یا کوچک و بزرگ بودن کاراکتر ها عرضی که رشته اشغال میکنه فرق میکنه.مثلا
TextWidth(“a”) = 90 ، TextWidth(“A”) = 166 و TextWidth(“Abcd”) = 375
167. TimeSerial ساعت و دقیقه و ثانیه رو میگیره و زمان رو با نوع Dateبرمیگردونه مثلا
Debug.Print TimeSerial(10, 20, 30) ‘ prints 10:20:30 AM
168. TimeValueمثل قبلیه با این فرق که یه تا مقدار رو یکجا و از نوع رشته میگیره .مثلا :
Debug.Print TimeValue(“10:20:30”) ‘ prints 10:20:30 AM
169. Trim (و Trim$) یک رشته میگیره و فاصله های اول و آخرش رو حذف میکنه(کار LTrim و RTrim رو با هم میکنه) مثلا :
Debug.Print Trim(“ Visual Basic “) ‘prints “Visual Basic”
170. TypeName یک مقدار میگیره و نوعش رو برمیگردونه.اون مقدار میتونه از هر نوعی باشه.مثلا :
Debug.Print TypeName(Me) ‘ prints Form1
Debug.Print TypeName(Command1) ‘ prints CommandButton
Debug.Print TypeName(“Hello”) ‘ prints String
Debug.Print TypeName(2.2) ‘ prints Double
Debug.Print TypeName(Err) ‘ prints ErrObject
171. UCase (و UCase$) یک رشته میگیره و همه ی حروف کوچک اون رو به حروف بزرگ تبدیل میکنه مثلا ”!UCase(“Hello!”) = “HELLO.این تابع برعکس LCase کار میکنه.
172. Unload یک آبجک رو از حافظه پاک میکنه.مثلا Unload Form1
173. Val یک رشته میگیره و عدد های سمت چپش رو جدا میکنه و وقتی به یک کاراکتر غیر عددی یا غیر نقطه برسه کارش رو ادامه میده .عددی که برمیگردونه از نوع Double هستش.مثلا
Val(“2 4 7 11 323.23 adas”) = 24711323.23
174. در مورد کار تابع های ValidateControls و WhatsThisMode هم چیزی نفهمیدم :
MSDN :
ValidateControls: Ensures that the contents of the last control on the form are valid before exiting the form.
WhatsThisMode: Duplicates the functionality of the WhatsThisMode method of a Visual Basic 6.0 form.
175. VarType هم یک مقدار میگیره و نوع اون رو از نوع vbVarType برمیگردونه و فرقش هم با TypeName همینه.مثلا
VarType(2.2) = vbDouble
176. Year یه تاریخ میگیره و سال اون رو استخراج میکنه.مثلا
Year(Now()) = 2005
177. ZOrder مختصات Z یک کنترل(به طور پیشفرض فرمی که توش فراخوانی میشه) رو تعیین میکنه.مختصات Z تیعیین میکنه که کدوم کنترل ها باید زیر بقیه و کدوم باید روی دیگری باشه.مقدار 0 (مقدار پیشفرض) یه کنترل رو به رو میاره و مقدار 1 به زیر میبره