ЛЕКЦ 3. ВИЗУАЛ БЕЙСИКИЙН ӨГӨГДЛИЙН ТӨРЛҮҮД. ФУНКЦУУД 1. Өгөгдлийн төрлүүд 2. Визуал бейсикийн үйлдлүүд
математик үйлдлүүд
логик үйлдэл
3. Үндсэн функцууд
мөр функцууд ба илэрхийлэл
математик функцууд ба илэрхийлэл
цаг хугацааны функцууд ба илэрхийлэл
MsgBox, InputBox функцууд
3.1. Өгөгдлийн төрлүүд Өгөгдлийн төрлийг тоон, мөр, тусгай гэсэн үндсэн 3 хэсэгт хуваадаг. Тоон өгөгдөлтэй ажиллахад тоон төрлийг, тексттэй ажиллахад мөр төрлийг, бусад тусгай төрөлтэй ажиллах бол тусгай төрлийг ашиглана. Мөр төрөл нь тэг эсвэл олон тэмдэгтийн дараалал юм. Визуал бейсикт тогтсон ба хувьсах урттай гэсэн хоѐр мөр төрлийг хэрэглэдэг. Мөн өгөгдлийн төрөлд variant төрөл бий. Variant төрөл нь өгөгдлийн төрлийг дурын төрлөөр зарлах төрөл юм. Үүнийг өгөгдлийн нэг төрлийг нөгөө төрөлд хувиргахад хэрэглэдэг. Визуал бейсикийн өгөгдлийн төрлүүдийг дараах хүснэгтээр харуулья. Төрөл
Төрлийн товчлол
Byte Boolean Integer Long Currency Single Double
Byte Bln Int Lng Cur Sng Dbl
Decimal Date String
Dec Dte Str
Variant Usertype Object
Var Obj
Утгын хязгаар 0-255 хооронд орших бүхэл тоо Үнэн (True) эсвэл худал (False) гэсэн утга авна -32768-ээс 32767 хүртэл утга авах бүхэл тоон төрөл -2,147,483,648-ээс 2,147,483,647 хүртэл утга авах төрөл -4’922’337’203’685,477.5808-аас 4’922’337’203’685’477.5807 хүртэл утга авна -3.402823Е-38-ээс 3.402823Е+38 хүртэл утга авах хөвөгч таслалтай тоон төрөл -1.7976313486232Е-308-ээс 1.7976313486232Е+308 хүртэл утга авах давхар нарийвчлалтай, хөвөгч таслалтай тоон төрөл 28 оронтой аравтын бутархай утга авах төрөл Огноо ба хугацааны утга авах төрөл 0-ээс 65500 хүртэл утга авах тоо, тэмдэгтийн зэрэгцээ %, &, ^ гэх мэт тусгай тэмдэгтүүдийг агуулах төрөл Дурын буюу үл мэдэгдэх төрөлтэй үед хэрэглэх төрөл Хэрэглэгчийн дурын төрөл Формууд ба удирдах элемнетүүд шиг өгөгдлийн тусгай төрөл
Визуал бейсикийн тоон төрлийг тодотгохдоо тусгай тэмдэгтүүдийг тухайн тооны ард бичнэ. Жишээ: Long 15&, Long 15&, Double 15#, Currency 15@ Визуал бейсикт хувьсагч ганцхан өгөгдлийн төрөлд байна. Хувьсагчийг тодорхойлохдоо түүний төрлийг нэртэй нь хамт тодорхойлно. Үүнийг хувьсагчийг зарлах гэдэг. Хувьсагчийг зарлахдаа дараах шаардлагыг анхаарах хэрэгтэй:
хувьсагчийн нэр 40 тэмдэгтээс хэтрэхгүй;
үсэг, тоо болон доогуур зураасаас бүрдэнэ;
эхний тэмдэгт заавал үсэг байх ѐстой;
түлхүүр үгийг хэрэглэж болохгүй.
Хувьсагчийг зарлахдаа Dim түлхүүр үгээр зарлах бөгөөд энэ нь програмыг ажиллуулахад тухайн хувьсагчийг санах ойд байрлуулна. Өөрөөр хэлбэл, Dim нь тухайн өгөгдлийн төрлийн хэмжээгээр санах ойг хуваарилна гэсэн үг. Бичигдэх ерөнхий хэлбэр: Dim <хувьсагчийн нэр> As <хувьсагчийн төрөл> Жишээ нь Dim Num As Integer нь Num нэртэй хувьсагчийг integer буюу бүхэл тоон төрлөөр зарлаж байна. Энэ хувьсагч нь санах ойд 2 байт зай эзлэх бөгөөд хүрэлцээтэй зай 1
байгаа эсэхийг үйлдлийн систем тодорхойлно . Ижил нэртэй хувьсагчуудыг ижил процедурт 2
зарлаж болохгүй . Хувьсагчийг яаж ашиглахаас хамааран Dim-н байрлалыг тодорхойлно. Хэрвээ форм, модулийн эсвэл стандарт модулийн хамгийн дээд талд Option Еxplicit-г бичиж өгвөл тэдгээрээс ашиглахаас өмнө бүх хувьсагчийг, зарлахаас өмнө нэрийг нь ашиглаж болох ба тэр нь variant төрөлтэй. Dim-г тухайн үзэгдэлт процедурт тодорхойлсон бол түүний зарласан хувьсагч нь локал байна. Харин кодын ерөнхий хэсэгт тодорхойлсон бол тэр хувьсагч нь глобал хувьсагч буюу програмын хаанаас ч хандаж болох хувьсагч байна. Dim-г мөн public гэж тодорхойлох ба глобал хувьсагч, прожектын бүх модулд хамаарна. Стандарт модулд зарласан хувьсагчдын бараг ихэнх нь глобал хувьсагч бөгөөд public-аар зарлагддаг. Жишээ нь: Dim intDistance As Integer Dim sngPrice As Single Dim dblWidth As Double Мөр төрлийн хувьсагчийг дараах байдлаар тодорхойлно: Dim <мөр төрлийн хувьсагчийн нэр> As String Энд, <мөр төрлийн хувьсагчийн нэр> нэртэй мөр нь 0-65500 урттай байна. Мөрийн уртыг тодорхой уртаас хэтрэхгүй байхаар тодорхойлж болно. Dim strFirstName As String*20 Энд strFirstName хувьсагчийн авах мөрийн урт нь 0-20 хооронд байна. Ижил төрөлтэй хэд хэдэн хувьсагчийг дараах байдлаар зарлаж болно: Dim A As Integer, C As Integer, D As Integer Хувьсагчид оноох хэлбэр нь дараах хэлбэртэй байна: <Хувьсагчийн нэр> = < илэрхийлэл> Энэ нь удирдах элемент, хувьсагч эсвэл өөр объектод утга оноох хэлбэр юм. Еxpression нь хувьсагч, үсэгчлэл эсвэл математик илэрхийлэл байж болно: 1
Тухайн хувьсагчийг тодорхойлсны дараа үйлдлийн систем санах ойд хангалттай зайтай үед тухайн хувьсагчийн санах ойн хаягийг тодорхойлно гэсэн үг. 2 Хоѐр хувьсагчийг ижил нэртэйгээр ижил процедурт зарлаж өгч блохгүй.
intAge = 25 sngLength = 22.7 sngLength =”twenty two point seven” Жишээ нь: Private Sub cmdNew_Click() cmd.Caption = “Click here!” End Sub Энэ жишээ нь cmdNew гэсэн нэртэй команд товчин дээр дарах үзэгдэл явагдахад түүний Caption шинжид “Click here!” гэсэн утга оноож байна. Энэ жишээ нь cmdNew гэсэн нэртэй команд товчин дээр дарах үзэгдэл явагдахад түүний Caption шинжид “Click here!” гэсэн утга оноож байна. Private Sub cmdButton_Click() picBox.Cls picBox.Print “hello” today = “03/18/10” picBox.Print today End Sub Програмын үр дүн: hello 03/18/10 2. Визуал бейсикийн үйлдлүүд Математик үйлдэл: Визуал бейсикт хэрэглэгдэх математик операторууд (+, -, *, /) нь бусад хэлнийхтэй адилхан тодорхойлогддог. Зэрэг дэвшүүлэх оператор нь (^), хоѐр илэрхийлэлд (& ба +)-г хэрэглэнэ. Харьцуулах оператор: Өгөгдлийн утгуудыг өөр хооронд нь харьцуулах ба үр дүн нь үнэн эсвэл худал үйлдэхүүн болно. > - эрс их < - эрс бага >= их юм уу тэнцүү <= бага юм уу тэнцүү = тэнцүү <> ялгаатай Харьцуулах оператор нь тоон болон үсэгт илэрхийлэлд мөн удирдах элементүүдийн утга, хувьсагчдад хэрэглэгдэнэ. Түүнчлэн нэг трөлийн тоог нөгөө төрөлтэй, аль нэг төрлийн мөрийг нөгөө хэлбэрийн мөртэй харьцуулахад хэрэглэж болно. Логик үйлдэл: Визуал бейсик нь бусад програмчлалын хэлтэй адилхан логик оператортой: And
логик ба
If (A>B) and (C>D)
Хоср талын илэрхийлэл үнэн бол үнэн
үйлдэхүүн, худлаа байвал биелэхгүй. Or
логик
If (A>B) or (C>D)
буюу
Хоѐр талын илэрхийллийн аль нэг нь биелж байвал үнэн үйлдэхүүн, худлаа байвал биелэхгүй.
Not
логик
If Not(strAns = “Yes”)
үгүйсгэл
Энэ нь үнэн эсвэл худал үр дүнгийн эсрэг үйлдэхүүн. Хэрвээ strAns үнэн байвал Not нь үгүйсгэж худал болгож харгалзах үйлдлийг хийнэ.
Жишээ: (3 < n) And (n < 12) илэрхийлэл нь энэ нөхцөлүүд хоѐуулаа биелнэ гэсэн үг. 3.3. Үндсэн функцууд 3.3.1. Мөр функцууд ба илэрхийлэл 3.3.1.1. Asc функц нь тэмдэгтийн тоон кодыг буцаана. Бичигдэх ерөнхий хэлбэр нь: Asc(мөр илэрхийлэл) AscB(мөр илэрхийлэл) AscW(мөр илэрхийлэл) 3
Мөр илэрхийллийн эхний тэмдэгтийн тоон кодыг буцаана. Жишээ нь : Dim intAnsi As Integer Int Ansi=Asc(“Hello!”) 3.3.1.2. Filter функц нь өгөгдсөн мөр массивын шүүлт юм. Бичигдэх ерөнхий хэлбэр нь: Filter(inputStr, findValue [, Include[, Compare]]) InputStr – оруулах мөр илэрхийлэл FindValue – тухайн мөрнөөс хайх тэмдэгт Include – Boolean аргумент Compare – харьцуулах утга. 4
Жишээ нь : Dim vIdx As Variant Dim vArray(3) Dim I As Integer vArray(0)=”Forty” vArray(1)=”Forty-two” 3 4
Тайлбар: intAnsi хувьсагч И үсгийн тоон код 72 гэсэн утга авна. Тайлбар: Filter функц нь “For” дэд мөрийг массивт өгсөн утгуудаас шүүж харуулна.
vArray(2)=”Four hundred” vArray(0)=”Fantastic Four” vIdx=Filter(vArray, “For”) For I To Ubound(vIdx, 1) Debug.Print vIdx(i) Next 3.3.1.3. Format функц нь мөр, тоо, огноо гэх мэтийн утгыг өөрчлөхгүйгээр янз бүрийн хэлбэрээр үзүүлнэ: Бичигдэх ерөнхий хэлбэр: Format(expression, “format1;format2”, firstdayofweek, firstweekofyear) expression – хэлбэршүүлэхэд сонгогдсон огноо format1,2,... – хэлбэршүүлэх сонголт firstdayofweek – огноонд хэрэглэсэн хэлбэршүүлэлт firstweekofyear- огноонд хэрэглэсэн хэлбэршүүлэлт Хэлбэршүүлэлтийн төрөл Утга
Функц
(0)
дэлгэцэнд тэг эсвэл тоо
(#)
дэлгэцэнд тоо эсвэл өөр
(.)
дэлгэцэнд аравтын цэг
(%)
дэлгэцэнд хувиар үзүүлнэ
(,)
мянгатын орноор тусгаарлана
(
хугацаа тусгаарлана
(/)
огноо тусгаарлана
Жишээ нь: Sformat=’######.00’ Picture1.Print Sformat & “:”; Tab(30); Format(Val(Text1), Sformat) 3.3.1.4. Joint функц нь массивт өгөгдсөн бүх утгуудыг нэгтгэн мөр үүсгэнэ. Бичигдэх ерөнхий хэлбэр: Join(ListArray, [Delimiter]) ListArray – нэг хэмжээст массивт агуулж буй дэд мөрүүдийн утга Delimiter – ListArray-д байгаа дэд мөрүүдийг тусгаарлах мөр утга. Энэ аргумент сонгогдсон байна. Жишээ нь: Dim sString Dim vArray(2) vArray(0)=”Mts”
vArray(1)=”Mich” vArray(2)=”Jordan” sString=Joint(vArray, “+”) 3.3.1.5. Lcase функц нь мөр тэдмэгтийн томоор бичигдсэн үсгийг жижиг хэлбэрт шилжүүлнэ. Бичигдэх ерөнхий хэлбэр: Lсase(strExpression) strExpression – өгөгдөл, мөр илэрхийлэл
Жишээ нь: Dim strCommandLine As String, strLowerCommand As String strCommandLine=command strLowerCommand=Lcase(strCommandLine) 3.3.1.6. Len функц нь хувьсагчид агуулагдаж байгаа мөрийн уртыг буцаана. Мөрийн уртыг олоход ихэвчлэн хэрэглэнэ. Бичигдэх ерөнхий хэлбэр: Len(strExpression) Жишээ нь: Dim strHello As String Dim IngStrLen As Long StrHello=”Good” IngStrLen=Len(strHello)
3.3.1.7. Lset – нэг мөрөөс эсвэл хэрэглэгчийн тодорхойлсон төрлөөс нөгөө төрөл рүү өгөгдлийг зөөдөг. Хувьсагчийн хувьд ч гэсэн ижилхэн ашиглана. Бичигдэх ерөнхий хэлбэр: Lset
s1=s2
s1 – мөр эсвэл хэрэглэгчийн тодорхойлсон хүлээж авах шинэ өгөгдөл; s2 – мөр эсвэл хэрэглэгчийн тодорхойлсон илгээх өгөгдөл. Жишээ нь: Private Type OneType a as string*10 b as integer c as long End Type Private Type TwoType a as string*10 b as integer c as long End Type
Private Sub cmdLset_Click() Dim ot As OneType Dim tt As TwoType Ot.a=”Hi” Ot.b=2 Ot.c=3 Lset tt=ot Debug.Print tt.a, tt.b, tt.c End Sub 3.3.1.8. Mid функц нь мөр илэрхийллээс таслах үүрэгтэй. Бичигдэх ерөнхий хэлбэр: Mid(strExpression, IngStart [ , IngLength]) strExpression – өгөгдөл, мөр илэрхийлэл IngStart – эхлэх тэмдэгтийн дугаар IngLength – таслах мөрийн урт Жишээ нь: Private Sub Command1_Click() Dim strGood As String Dim strBye As String, strDolly As String strGood=”good bye, Dolly” strBye=Mid(strGood, 6, 3) strBye=Mid(strGood, 11) Text1.Text=strBye Text2.Text=strDolly End Sub 3.3.1.9. Str функц нь тоон өгөгдлийг хэлбэршээгүй мөр рүү хөрвүүлнэ. Бичигдэх ерөнхий хэлбэр:
s=Str(txtNumber.Text)
txtNumber.Text – тоон өгөгдөл 3.3.1.10. StrComp функц нь хоѐр мөрийг хооронд нь харьцуулна. Бичигдэх ерөнхий хэлбэр: StrComp(strString1, strString2 [, compareType%]) strString1 – харьцуулах эхний мөр strString2 – харьцуулах хоѐр дахь мөр compareType% - 0 бол нарийн харьцуулах, 1 бол ерөнхий харьцуулна strString функцийн буцаах утга strString1 < strString2
-1
strString1 = strString2
0
strString1 > strString2
1
мөрнүүд 0 бол
Null
3.3.1.11. Ucase функц нь тухайн мөрний бүх жижиг үсгийг том болгон хөрвүүлнэ. Бичигдэх ерөнхий хэлбэр: Ucase(strExpression) Жишээ нь: Dim strCommand As String Dim strUpperCommand As String strCommand=Command strUpperCommand=Ucase(strCommand)
3.3.2. Математикийн функц ба илэрхийлэл 3.3.2.1. Тригнометрийн функцууд: Визуал бейсик нь синус, косинус, тангенс, арктангенс гэсэн тригнометрийн функцтэй. Өнцгийн хэмжээс нь радианаар хэмжигдэнэ. Өнцгийг радиан руу хөрвүүлэхдээ дараах функцийг тодорхойлно: Private Const pi=3.14159265 Function Deg2Rad(dblDegrees As Double) As Double Deg2Rad = dblDegrees*(pi/180) End Function
3.3.2.2. Логарифм функц нь тухайн тооны натурал логарифмыг буцаадаг. Логарифмыг дурын суурьтай байхаар хэрэглэнэ: Public Function anyLog(dblLogBas As Double, dblNumber As Double) As Double anyLog=Log(dblNumber)/ Log(dblBase) End Function 2.2.3. Random функц: Компьютерийн санамсаргүй тоонууд яг санамсаргүй тоо байдаггүй. Санамсаргүй тооны цуваан үндсэн ерөнхий тооноос удамшсан санамсаргүй тоогоор эхэлдэг. Энэ удамшил нь Randomize statement-ээр хийгдэнэ. Randomize нь гол модул дотор эсвэл програмын гол формын ачаалах үзэгдэл дээр байрлах хэрэгтэй. Rnd функц нь (0; 1) хооронд байх хуурамч санамсаргүй тоог буцаадаг. Түүнчлэн өөр сонгогдсон интервалаас санамсаргүй утга буцаалгаж болно. Жишээ нь: Public Function Random(sngLoVal As Single, sngHiVal As Single) As Single Dim sngRange As Single sngRange = 1 + (sngHiVal – sngLoVal) Random = (Rnd*sngRange) + sngLoVal
End Function
Энд санамсаргүй тооны интервалыг sngLoVal болон sngHiVal аргументээр тодорхойлж өгнө. Хэрвээ санамсаргүй бүхэл тоог авья гэвэл: Public
Function
RandomInt(intLoVal
As
Integer,
intHiVal
As
Integer)
As
Integer) As Integer Dim intRange As Integer intRange = 1 + (intHiVal – intLoVal) RandomInt = Int(Rnd * intRange) + intLoVal End Function Жишээ нь: Randomize statement Function
RndInt(intLoNum
As
Integer,
intHiNum
Integer Static blnSeeded As Boolean Dim intRange As Integer If blnDSeeded=False Then Randomize blnSeeded=True End If intRange = intHiNum – intLoNum + 1 RndInt = Int(intRange * Rng + intLoNum) End Function 3.3.2.4. Abs функц нь тооны абсолют утгыг буцаана. Бичигдэх ерөнхий хэлбэр:
Abs(numExpression)
numExpression – тоон илэрхийлэл 3.3.2.5. Sqr функц нь тооны квадрат язгуур гаргана. Бичигдэх ерөнхий хэлбэр:
Sqr(dblExpression)
dblExpression – бодит тоон илэрхийлэл Жишээ нь: Private Sub Form_Load() Dim dblResult As Double dblResult=Sqr(169) Text1.Text=dblResult End Sub 3.3.2.6. Val функц нь тухайн мөр тэмдэгтийг тоон төрөлд хувиргана.
As
Бичигдэх ерөнхий хэлбэр:
Val(strExpression)
3.3.3. Цаг хугацааны функцууд ба илэрхийлэл 3.3.3.1. Cdate функц нь мөр юм уу тоон илэрхийллийг огноо төрлийн өгөгдөлд хөрвүүлдэг. Бичигдэх ерөнхий хэлбэр:
Cdate(expression)
expression – илэрхийлэл 3.3.3.2. Date, Date$ функц: Date нь date төрөлтэй системийн он, сар, өдрийн утгыг буцаах ба date$ нь мөр төрөлтэй системийн он, сар, өдрийн утгыг буцаана. Month(mm) : 01-ээс 12 хооронд утга авна. Day(dd): 01-ээс 31 хооронд утга авна. Year(yyyy): 0100-ээс 9999 хүртэлх утга авна.
3.3.3.3. Date ба Date$ statement: Системийн цагийг өөрчлөнө. Бичигдэх ерөнхий хэлбэр: Date=expression$, Date$=datestring$ expression$: ерөнхий огноог дүрслэн үзүүлнэ; Date$=datestring$: mm-dd-yy. Mm-dd-yyyy форм дахь огноог дүрслэн үзүүлэх мөр. Mm: 1-ээс 12 хоорондох тоо; dd: 1-ээс 31 хоорондох тоо; yy: 00-оос 99 хоорондох тоо; yyyy: 1980 ба 2047 хооронд тоо.
3.3.3.4. Now функц нь системийн огноо, цагийг date төрөлтэйгээр илэрхийлнэ. 3.3.3.5. Hour, Minute, Second функцууд: Hour функц нь 0 (12:00 a.m) ба 23 (12:00 p.m) хооронд утга авна. Бичигдэх ерөнхий хэлбэр: Hour(expression), Minute(expression), Second(expression) 3.3.3.6. Time ба Time$ функцууд: Time функц нь одоогийн болж байгаа огноо төрөлтэй системийн цагийг огноо шиг буцаана. Time$ функц нь системийн одоогийн цагийг мөр шиг буцаана. Энэ хоѐр функцийн буцаах утга: Hour(hh) нь 00-23 хооронд утга авна. Minute(mm) нь 00-59 хооронд утга авна. Second(ss) нь 00-59 хооронд утга авна.
3.3.3.7. Time ба Time$ statement: Цагийг хэрэглэгч өөрчлөх боломжтой болгоно. Бичигдэх ерөнхий хэлбэр: Time=expression$, Time$=timestring$ expression$: hh:mm:ss хэлбэртэй мөр цаг timestring$: цагийг хүлээж авах бусад хэлбэр. 3.3.3.8. sdTimer үзэгдэл нь шөнө дундаас хойш өнгөрсөн болон тодорхой хугацаанаас хойш хэдэн секундын хугацаа өнгөрснийг илэрхийлдэг. 3.3.3.9. TimeValue функц нь форм дээрх мөр хэлбэрийн хугацааг визуал бейсикийн огноо төрөл рүү хөрвүүлнэ. Бичигдэх ерөнхий хэлбэр:
TimeValue(timestring$)
timestring$ - хөрвүүлэх текст мөр.
3.3.4. MsgBox, InputBox функцууд Таны програм хэрэглэгчид асуулт тавьж эргээд хариулт авах үйлдлийг гүйцэтгэхдээ MsgBox, InputBox гэсэн хоѐр функцийг хэрэглэдэг. Энэ функц нь тэг, нэг эсвэл хэд хэдэн аргументтэй боловч үндсэндээ ганцхан утга буцаана. Функцийн аргумент нь функц рүү утга дамжуулах үүрэгтэй хувьсагч юм. Функц нь тухайн аргументуудаар дамжигдсан өгөгдөлтэй ажиллаж тодорхой нэг утгыг буцаана. MsgBox нь хэрэглэгчид мэдээлэл өгдөг харилцах цонх. MsgBox()функц үргэлж бүхэл утга авдаг. Бичигдэх ерөнхий хэлбэр нь: Variable= MsgBox(strMsg [, [intType] [, strTitle]]) MsgBox нь 7 утгаас 1-ийг буцаана. MsgBox дээр байрлах товчны тоог тодорхойлохдоо ихэвчлэн Оk эсвэл Cancel байдаг. Үсэгт нэр
Утга
Тайлбар
OK button only
VbOKOnly
0
OK товчийг харуулна.
OK/Cancel buttons
VbOKCancel
1
OK/Cancel товчийг харуулна.
Abort/Retry/Ignore
VbAbortRetry
2
Abort/Retry/Ignore товчийг харуулна.
buttons
Ignore
Yes/No/Cancel buttons
VbYesNoCancel
3
Yes/No/Cancel товчийг харуулна.
Yes/No buttons
VbYesNo
4
Yes/No товчийг харуулна.
Retry/Cancel buttons
VbRetryCancel
5
Retry/Cancel товчийг харуулна.
MsgBox-ийн харилцах цонхон дээрх жижиг мэдээллийн зургийг дараах байдлаар тодорхойлно. Үсэгт нэр
Утга
Тайлбар
No icon
0
Тодорхойлоогүй
Critical icon
VbCritical
16
Аюултай мэдээллийн зураг гаргана.
Question mark
VbQuestion
32
Асуух илэрхийллийн зураг гаргана.
Exclamation point
VbExclamation
48
Анхааруулсан мэдээлэл бүхий зураг гаргана.
Information icon
VbInformation
Мэдээллийн
64
илэрхийллийн
зураг
гаргана.
Түүнчлэн аль товч дээр удирдлагатай байхыг дараах байдлаар тодорхойлно. Үсэгт нэр
Утга
Тайлбар Эхний товч идэвхтэй.
First button default
VbDefaultButton1
0
Second button default
VbDefaultButton2
256
Хоѐр дахь товч идэвхтэй.
Third button default
VbDefaultButton3
512
Гурав дахь товч идэвхтэй.
InputBox нь хэрэглэгчид асуулт тавьж утга хүлээн авдаг функц. TextBox нь хэрэглэгчээс утга авдаг удирдах элемент бол бусад удирдах элементүүд гар эсвэл хулганаар хэрэглэгчтэй холбогддог. Бичигдэх ерөнхий хэлбэр нь: strVariable=InputBox(strpromp [, [strTitle] [strDefault] [, intXpos, intYpos]]])
InputBox() хэрэглэгчийн хариултыг хүлээн авч мөр төрлөөр буцаадаг функц. Strpromp – дэлгэц дээрх оруулах цонхонд бичигдэх асуулт буюу текст; strTitle – оруулах цонхны гарчиг; strDefault – оруулах цонхны утга оруулах талбарт бичигдэх текст (өөрчилж болно); intXpos – оруулах цонхны зүүн ирмэгээс формын цонхны зүүн ирмэг хүртэлх зай; intYpos – оруулах цонхны дээд ирмэгээс формын дээд ирмэг хүртэлх зай.
ЖИШЭЭ БОДЛОГО Бодлого 1. Дэлгэцэнд он, сар, өдөр, гариг, цаг, минут секунд гаргах програм зохио.
Form frmCalendar: Caption = My Calendar
BorderStyle = 1 – Fixed Single Timer timDisplay: Interval = 1000 Label lblDay: Caption = Sunday FontName = Times New Roman FontBold = True FontSize = 24 Label lblTime: Caption = 00:00:00 PM FontName = Times New Roman FontBold = True FontSize = 24 Label lblYear: Alignment = 2 – Center Caption = 1998 FontName = Times New Roman FontBold = True FontSize = 24 Label lblNumber: Alignment = 2 – Center Caption = 31 FontName = Arial FontBold = True FontSize = 72 Label lblMonth: Alignment = 2 – Center Caption = March FontName = Times New Roman FontBold = True FontSize = 24
Option Explicit timDisplay Timer Event: Private Sub timDisplay_Timer()
Dim Today As Variant Today = Now lblDay.Caption = Format(Today, “dddd”) lblMonth.Caption = Format(Today, “mmmm”) lblYear.Caption = Format(Today, “yyyy”) lblnumber.Caption = Format(Today, “d”) lblTime.Caption = Format(Today, “h:mm:ss ampm”) End Sub Бодлого 2. StopWatch програм зохио.
Объект
Шинж
Утга
Form
frm
frmWatch
Command Button
cmd, btn
cmdExit, btnStart
Label
lbl
lblStart, lblEnd
TextBox
txt
txtTime, txtName
Menu
mnu
mnuExit, mnuSave
Check box
chk
chkChoice
Дээрх объектуудын шинжийг тодорхойлбол: Form1: BorderStyle
1-Fixed Single
Caption
Stopwatch Application
Name
frmStopWatch
Command1: Caption
&Start Timing
Name
cmdStart
Command2: Caption
&End Timing
Name
cmdEnd
Command3: Caption
E&xit
Name
cmdExit
Label1: Caption
Start Time
Label2: Caption
End Time
Label3: Caption
Elapsed Time
Label4: BorderStyle
1-Fixed Sungle
Caption
[Blank]
Name
lblStart
Label5: BorderStyle
1-Fixed Sungle
Caption
[Blank]
Name
lblEnd
Label6: BorderStyle
1-Fixed Sungle
Caption
[Blank]
Name
lblElapsed
Програмын код бичье. Option Explicit Dim StartTime As Variant Dim EndTime As Variant Dim ElapsedTime As Variant cmdStart командын товчлуурт бичигдэх код: Sub cmdStart_Click () „Establish and print starting time StartTime = Now lblStart.Caption = Format(StartTime, “hh:mm:ss”) lblEnd.Caption = “” lblElapsed.Caption = “”
End Sub cmdEnd командын товчлуурт бичигдэх код: Sub cmdEnd_Click () „Find the ending time, compute the elapsed time „Put both values in label boxes EndTime = Now ElapsedTime = EndTime – StartTime lblEnd.Caption = Format(EndTime, “hh:mm:ss”) lblElapsed.Caption = Format(ElapsedTime, “hh:mm:ss”) End Sub cmdExit командын товчлуурт бичигдэх код: Sub cmdExit_Click () End End Sub