Download presentation
Presentation is loading. Please wait.
Published byEgbert Shields Modified over 9 years ago
3
2 משתנים - variables משתנה - הנו מאגר מידע זמני למרות ש- VB לא מחייבת הגדרת משתנים (כברירת מחדל) רצוי לעשות זאת. ודא שאופציה Required Variable decleration בתפריט Tools, Options בכטיסיה Editor מסומנת כפעילה, זה יגרום ל- VB לדווח על שגיאות ניתן להוסיף את הפקודה Option Explicit בראש הקוד בכל אחד מהטפסים והמודולים
4
3 סוגי משתנים - (Data Types) S מחרוזת (String) n מספר שלם (Integer) l שלם שלם ארוך (Long integer) f נקודה צפה (floating point) d נקודה צפה cמטבע (Currency) bבולאני (Boolean) vמשתנה מסוג Variant
5
4 הגדרת משתנים משתנה לוקלי באזור השיגרה או הטופס : Dim i As integer, name as string Private i As integer משתנה גלובלי באזור המודול : Public i As Currency משתנה סטטי באזור השיגרה (שומר את ערכו) : Static name As String (שימוש במילה static בראש השיגרה הופכת את משתניה לסטטיים.
6
5 הגדרת קבועים Const meters=1000 public const progtitle=“my program” מילת המפתח public גורמת לקבועים להיות זמינים בכל התוכנית, בהנחה שההצהרה ב- module
7
6 הגדרת מערכים בעלי אורך קבוע Dim Counter(15) as integer Public Counter(15) as integer Dim counter(1 to 16) as integer Dim sums(100 to 120) as strings כדי לשנות את ברירת המחדל של הערך הנמוך ביותר של האינדקס מ- 0 ל- 1 ניתן להגדיר במודול: option base 1
8
7 מערך רב - ממדי Dim arr(9,9) as Double Static matrixa(1 to 10, 1 to 10) as integer Dim Multid(3, 1 to 10, 1 to 15)
9
8 מערך דינמי Dim Arr() as Double הקצאת מספר האיברים האקטואלי ע”י משפט redim בתוך פרוצדורה sub calc(). Redim Arr(19,25) End Sub
10
9 הגדרת סוגי משתנים חדשים Private type person Public type person private type person id as string name as string age as integer end type
11
10 הגדרת משתנים של סוגי משתנים חדשים Dim myrecord as person, yourrecord_ as person
12
11 If statements If...Then If...Then...Else Select Case
13
12 If statements If condition Then statements End If If condition1 Then [statementblock-1] [ElseIf condition2 Then [statementblock-2]]... [Else [statementblock-n]] End If
14
13 Select Case Select Case testexpression [Case expressionlist1 [statementblock-1]] [Case expressionlist2 [statementblock-2]]... [Case Else [statementblock-n]] End Select
15
14 Loop Statement Do...Loop For...Next For Each...Next
16
15 Do...Loop Statement Repeats a block of statements while a condition is True or until a condition becomes True. Do [{While | Until} condition] [statements] [Exit Do] [statements] Loop
17
16 Do...Loop Statement Do [statements] [Exit Do] [statements] Loop [{While | Until} condition]
18
17 Do...Loop Statement Loop zero or more times Loop at least once Do Until condition statements Loop Do statements Loop Until condition Do While n < 100 n = n + n Loop
19
18 While...Wend Statement While condition [statements] Wend Dim Counter Counter = 0 While Counter < 20 Counter = Counter + 1 Wend ' End While loop when Counter > 19.
20
19 הצגת הודעה MsgBox “Hello Users” Dim mystr as string mystr = “Hello” & “Users” MsgBox mystr MsgBox(Prompt,[,buttons][,title][,helpfile,context])
21
20 הצגת הודעה ניתן לשלב בתיבת ההודעה אחד מבין ארבעה סמלים אפשריים המציינים את מהות ההודעה: הודעה חשובה ביותר - מורה על התרחשות שגיאה חמורה (16) שאילתה - מורה על שהתוכנית זקוקה למידע נוסף מהמשתמש (32) אזהרה - מעיד על של שגיאת תוכנית העלולה להוביל לתוצאות בלתי רצויות (48) הודעת מצב - מיידעת את המשתמש לגבי מצב התוכנית (ציון סוף תהליכים שונים) (64) vbcritical vbquestion
22
21 הצגת הודעה - ערך מוחזר ניתן להתריע בפני בעיות שונות או להודיע למשתמש לבצע מהלך מסוים וזה מתבצע ע”י החזרת ערך. Result = MsgBox(“the printer is not_ responding”, vbretriycancel,”priter_ error”)
23
22 הצגת הודעה - מערכת לחצנים מערכת לחצנים ערך קבוע OK 0vbOkonly Cancel, OK 1 vbOkCancel Ignor,Retry,Abort2 vbAbortRetryCcancel Cancel, No, Yes3 vbYesNoCancel No, Yes 4 vbYesNo Cancel, Retry 5 vbCancelRetry
24
23 הצגת הודעה - ערך מוחזר לחצן ערך קבוע OK 1 vbOk Cancel 2 vbCancel Abort 3 vbAbort Retry 4 vbRretry Ignor 5 vbIgnor Yes 6 vbYes No 7 vbNo
25
24 הצגת הודעה - דוגמה Dim smsg as string dim nbuttons as integer Dim nresult as integer smsg=“are you sure you want to exit?” nbutton=vbyesno+vbquestion nresult=MsgBox(smsg,nbuttons,”my program”) if nresult=vbyes then end enif
26
25 תיבת קלט – Input Box InputBox(prompt[, title][, default][, xpos] [, ypos][, helpfile, context]) Private Sub Form_Load() Dim input1 As String input1 = InputBox("Enter your name", "Name Win") MsgBox "Your name is:" & input1, vbInformation, "Name Win" End Sub
27
26 תיבת קלט – Input Box
28
27 Combo Box שלושה סוגים של Combo Box: Style 0 (default) - drop-down combo box המשתמש יכול להוסיף אפשרויות לרשימה או ללחוץ על החץ לבחירה מרשימת האפשרויות Style 1 - Simple combo box הרשימה מופיעה, אין חץ פתיחה. מאפשר למשתמש להוסיף אפשרויות Style 2 - Drop down list box הרשימה אינה מופיעה עד שלוחצים על החץ. אין אפשרות להוסיף אפשרויות לרשימה
29
28 Combo Box - גישה box.list(index) Text1.Text = List1.List(2) התכונה ListIndex - מציינת את המיקום של האלמנט הנבחר ListIndex יהיה (1-), אם לא נבחרה אפשרות או שהמשתמש הוסיף אפשרות התכונה ListCount מציינת את מספר האלמהנטים ברשימה
30
29 Combo Box - גישה AddItem Removeitem Clear ListIndex ListCount List1.additem “germany” List1.additem “japan”, 0 List1.removeitem 0 List1.clear
31
30 Creating Menus By using the menu editor
32
31 תיבות דו - שיח שלוש דרכים להוסיף תיבות דו-שיח ליישום שלך: הוספת בקרים לטפסים שימוש בתיבות קלט ופלט (InputBox, MsgBox) שימוש בפקד CommonDialog על מנת להשתמש בתיבות דו-שיח סטנדרטיות כמו: Print, File open
33
32 תיבות דו - שיח נפוצות פקד CommonDialog Common Dialog מאפשר להציג את תיבות הדו-שיח הבאות: Open Save As Color Font Print
34
33 תיבות דו - שיח נפוצות פקד CommonDialog כדי להשתמש בפקד Common Dialog יש להוסיפו לסרגל הפקדים כך: לבחור Project Components לסמן את Microsoft Common Dialog Control
35
34 תיבות דו - שיח נפוצות פקד CommonDialog בזמן ריצה ניתן להשתמש בשיטות הבאות: MethodsDialog Displayed ShowOpenOpen ShowSaveSave As ShowColorColor ShowFontFont ShowPrinterPrint ShowHelpHelp
36
35 Open Dialog Box Private Sub mnuOpenItem_Click() CommonDialog1.Filter ="Metafiles_ (*.WMF)|*.WMF" CommonDialog1.ShowOpen Image1.Picture =_ LoadPicture(CommonDialog1.filename) mnuCloseItem.Enabled = True End Sub
37
36 Color Dialog Box Private Sub command1_Click() CommonDialog1.ShowColor End Sub
38
37 Modal Dialog Box Modal Dialog Box must be closed before you can continue working A Dialog Box is Modal if you click OK or CANCEL before you can switch To display a form as a modal dialog box use a style argument of 1 form1.show 1
39
38 Modeless Dialog Box Modeless Dialog Box let you shift the focus between the dialog box and another form without having to close the dialog box. Form1.show
40
39 Procedures פרוצדורות מחלקות את התוכנית למספר תוכניות קטנות פרוצדורות שנכתבו עבור פרוייקט אחד יכולות להיות בשימוש עבור פרוייקט אחר Sub procedures do not return a value Function procedures return a value Property procedures can return and assign a values, and set references to objects
41
40 Sub Procedures [Private|public][static]Sub procedurename (args) statements End Sub Sub is Public by default call MyProc(arg1,arg2) MyProc arg1,arg2
42
41 Function Procedures [Private|public][static]Function procname (args) [As Type] statements End Function As type is variant type by default Label1.Caption = func(y)
43
42 By Value Function func(ByVal x As Integer) As Integer x = 3 func = 4 End Function Private Sub Form_Load() Dim y As Integer y = 5 Label1.Caption = func(y) & "---" & y End Sub
44
43 By Reference Function func(Byref x As Integer) As Integer x = 3 func = 4 End Function Private Sub Form_Load() Dim y As Integer y = 5 Label1.Caption = func(y) & "---" & y End Sub
45
44 Property Procedures נשתמש בסוג זה של פרוצדורות כאשר יוצרים תכונות חדשות לאובייקטים או רוצים לשייך קוד מסוים לתכונה VB מספק שלושה סוגים של פרוצדורות property: Property Let - sets the value of a property Property Get - returns the value of a property Property Set - Set a reference to an object
46
45 MDI- Multiple Document Interface במקרים מסוימים יהיה צורך לאחסן ולאחזר נתונים מבלי להידרש לעוצמה של מסד נתונים. במקרים כאלה, קבצי טקסט יהוו את הפתרון הרצוי.
47
46 קבצי טקסט במקרים מסוימים יהיה צורך לאחסן ולאחזר נתונים מבלי להידרש לעוצמה של מסד נתונים. במקרים כאלה, קבצי טקסט יהוו את הפתרון הרצוי.
48
47 גישה סדרתית - פתיחת קובץ לקבצים סדרתיים אין מבנה מסודר כלשהו. פתיחת קובץ לקריאה (input), לכתיבה (Output) ולהוספה (Append) Open pathname for [input|Output|Append] As filenumber [len= buffersize ] פתיחת קובץ לא קיים לקריאה תהווה שגיאה פתיחת קובץ לא קיים לכתיבה או הוספה, תיצור אותו.
49
48 גישה סדרתית - קריאה מקובץ Line input # filenum, line קריאת שורה מהקובץ input #filenum,str,int,date קריאה לתוך משתנים מתאימים. פ’ זו מחפשת את תווי ההפרדה (פסיקים, גרשיים, ו-#) “text”,100,#1999-12-31# str=Input(chnum,#filenum) קריאת chnum תווים מקובץ filenum str=input(4,#filenum) קורא 4 תווים מהקובץ
50
49 גישה סדרתית - כתיבה לקובץ Print #filenum, “hello” hello write #filenum “hello” “hello”
51
50 גישה אקראית גישה אקראית מתאימה לקבצים המכילים רשומות בעלי אורך ומבנה זהים Type worker lastname as string*10 title as string*7 rank as string*2 End Type public employee as worker
52
51 גישה אקראית - פתיחת קובץ Open pathname [for random] As filenumber len= buffersize הגישה האקראית היא ברירת המחדל, לכן לא חייבים לכתוב for random reclen=len(employee) filenum=freefile open “myfile.txt” as filenum len=reclen
53
52 גישה אקראית - קריאה וכתיבה קריאת רשומות למשתנים Get filenum, position, employee position מכיל מספר הרשומה get #1,1,employee כתיבת משתנים לרשומות Put #filenum,position,employee משתמשים במשפט seek כדי לעבור בין רשומות בקובץ seek #1,3 משפט get או put הבא יתייחס לרשומה מספר 3
54
53 גישה בינרית הגישה הבינרית מאפשרת שליטה מוחלטת על הקובץ. ה- bytes בקובץ יכולים לייצג כל דבר. בגישה הבינרית משתמשים כאשר חשוב לשמור על גודל קובץ קטן Open pathname for binary As filenumber
55
54 פונקציות על קבצים file copy source, dest kill path name oldname as newname mkdir pathname rmdir pathname chdir pathname chdrive drive strvar=dir(path[,attr]) if dir$(“c:\myfile.txt”)=“” then... Strvar=cyrdir$([drive]) יחזיר את שם התיקיה הפעילה close #filenum הפונקציה shell להפעלת תוכניות נוספות doublevar=shell(pathname[,winstyle]) dtaskid=shell(notepad d:\readme.txt”, vbnormalfocus)
56
55 Accessing Databases אובייקט DATA תכונות אובייקט DATA : connect (Access) Databasename Readonly (true,false) RecourdSource RecordSetType (Table, Dynaset, SnapShot) תכונות אובייקט קשור: DataSource (אובייקט DATA) DataField
57
56 Recordset אובייקט recordset מייצג את הנתונים שעובדים עימם בתוכנית. Index תכונה להגדרת שדה חיפוש של בסיס הנתונים Seek שיטה (method) לחיפוש הרשומה ( ניתן להשתמש באופרטורי השוואה עמ ” נ להשוות את המחרוזת שמחפשים לטקסט שבבסיס הנתונים ) NoMatch תכונה שהיא true אם לא נמצאה המחרוזת שמחפשים MoveFirst שיטה שגורמת לרשומה הראשונה להיות הנוכחית
58
57 Recordset Type Table-type Recordset (vbTableType) a set of records that represents a single database table that you can use to add, change or delete records Dynaset-type Recordset (vbDynasetType) a dynamic set of records that represents a database table or the results of a query containing fields from one or more tables. You can add, change and delete records and it will be reflected in the table(s) Snapshot-type Recordset (vbSnapshotType) a static copy of a set of records that you can use to find data or generate reports. It can contain fields from one or more tables but cant be updated
59
58 הוספת רשומה לבסיס הנתונים Data1.Recordset.AddNew Data1.Recordset.field1 = value EOFAction property: 0 - MoveLast 1 - EOF (disable movenext button) 2 - AddNew
60
59 מחיקת רשומה מבסיס הנתונים Data1.Recordset.Delete פקודה זו מוחקת את הרשומה הנוכחית Data1.Recordset.MoveNext עוברים לרשומה הבאה
61
60 גיבוי / שיכפול בסיס הנתונים Filename=inputbox(“Enter the path for_ backupcopy”) if filename <> ”” then filecopy data1.databasename, filename endif
62
61 חיפוש נתון מבסיס הנתונים Prompt$=“Enter the last name you want to search”) searchstr = inputbox(prompt$,”lname search”) data1.recordset.index=“lname” data1.recordset.seek “=“, searchstr$ if data1.recordset.nomatch then msgbox(“last name not found”) end if
63
62 OLE -Object Link and Embedded OLE הוא אובייקט המאפשר להתחיל יישומי windows מתוך יישום VB יישומים אלה יכולים להיות מקושרים (Link) או משובצים (Embedded) ביישום VB. Linked object - מכיל נתונים המנוהלים ע ” י האפליקציה שיצרה אותו ומאוחסנים בקובץ האפליקציה. Embedded object - מכיל נתונים המאוחסנים בתוך היישום של VB
64
63
65
64 OLE Automation Dim x As Object Set x = CreateObject("word.application") x.Visible = False x.Documents.Add x.Selection.Text = Text1.Text x.ActiveDocument.CheckSpelling Text1.Text = x.Selection.Text x.ActiveDocument.Close savechanges:=wdDoNotSaveChanges x.Quit Set x = Nothing יצירת אובייקט word הסתר word פתח מסמך חדש העתק את textbox למסמך הרץ בדיקת איות העתק תוצאה בחזרה ל - textbox צא מ - word
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.