Download de presentatie
GepubliceerdFien Verbeek Laatst gewijzigd meer dan 10 jaar geleden
1
Hoofdstuk 2 - Inleiding tot Visual Studio .NET IDE
Overzicht van de Visual Studio.NET IDE Menu Bar en Toolbar Visual Studio .NET IDE Windows Help Een eerste programma : een form applicatie Een tweede programma : een console applicatie Rekenkundige bewerkingen Relationele operatoren Visual Basic.NET
2
2.1 Inleiding Visual Studio .NET Visuele programmeeromgeving
Microsoft’s Integrated Development Environment (IDE) Gebruikt om programma’s aan te maken, te debuggen en uit te voeren (applicaties) Visuele programmeeromgeving Drag en drop technieken van bouwdozen volstaat om een rich gebruikersinterface te maken. Visual Basic.NET
3
2.2 Visual Studio .NET IDE Start Page Location Bar Navigatie knoppen
Hidden Window Start Page links Recente projecten Dynamic Help Visual Basic.NET
4
2.2 Visual Studio .NET IDE File > New > Project . Opent New project Dialoogvenster 1. Kies Project Folder Kies “Visual Basic” 2. Kies Project Type Kies Windows Application 3. Vul projectnaam in 4. Stel directory in waar je project wenst op te slaan 5. Klik OK Visual Basic.NET
5
2.2 Visual Studio .NET IDE De ontwikkelomgeving (IDE) van .NET
Menu Title bar Menu Bar Tabs Solution Explorer Forms (windows applicatie) Properties venster Visual Basic.NET
6
2.3 Menu Bar en Toolbar De Menu Bar Visual Basic.NET
7
2.3 Menu Bar en Toolbar De toolbar Open File Visual Basic.NET
8
2.4 Visual Studio.NET Windows
Solution Explorer (View > Solution Explorer) Bevat een lijst met de verschillende elementen van de huidige solution Rechtermuisklik op 1 van de programmeer elementen geeft een context sensitive menu Icoontjes bovenaan afhankelijk van geselecteerd element Onderaan 2 tabs : Solution Explorer en Class View Visual Basic.NET
9
2.4 Visual Studio.NET Windows
De Toolbox (View > Toolbox) Gebruik : Ontwerpen van gebruikersinterface van de applicatie Customizatie : Tools > Customize toolbox Toevoegen van een besturingselementen aan formulier : dubbelklik icon in toolbox : besturingselement wordt in de standaardgrootte in midden van form geplaatst klik icon, verplaats muisaanwijzer naar form, klik op plaats waar element moet komen en stel grootte en vorm van besturingselement in Ctrl-klik icon laat toe eenzelfde besturingselement meerdere maal op form te plaatsen Visual Basic.NET
10
2.4 Visual Studio.NET Windows
Bewerken van besturingselementen op een formulier : Resize van een control : adhv muis of SHIFT + pijltjes Bewegen van een control : maak gebruik van de muis om control te bewegen pas property Location aan in Property window selecteer control en maak gebruik van pijltjes toetsen Selecteren van een groep : rechthoek tekenen ‘ Shift – Klik ’ of ‘ Ctrl – Klik ’ Visual Basic.NET
11
2.4 Visual Studio.NET Windows
De werkbalk Form Editor of het menu Format Align : lijnt een groep elementen uit (top, …, left,…). Align rechts bvb alligneert met het meest rechts gelegen punt. Make same size : maakt een groep elementen even groot (met de kleinste breedte, hoogte, …). Size to Grid : je past de eigenschappen van height en width van alle geselecteerde elementen aan het raster aan. Horizontal/Vertical Spacing : ruimte tussen besturingselementen gelijk maken. Center : centreren van alle elementen horizontaal of verticaal op een formulier. Bring to Front/Back : plaatst element respectievelijk vóór of achter alle andere elementen op het formulier. Lock Controls Toggle : verhindert dat de plaats en grootte van een element gewijzigd wordt ! (enkel voor geselecteerde form) Visual Basic.NET
12
2.4 Visual Studio.NET Windows
De Component Tray Bevat de componenten zonder zichtbare interface. Vb Timer Visual Basic.NET
13
2.4 Visual Studio.NET Windows
Properties Windows (View > Property Window,F4) Instellen en bekijken van eigenschappen van formulier en controls Stel altijd eerst de NAME en TEXT properties van controls in!!!! Deze wordt gebruikt om in de code naar de control te verwijzen. Hou rekening met de Naming conventions! Visual Basic.NET
14
2.4 Visual Studio.NET Windows
Properties kan je ook instellen at run time op basis van code : Toekennen van eigenschappen txtName.Text = "Hello, World!" Opvragen van eigenschappen username = txtName.Text Visual Basic.NET
15
2.4 Visual Studio.NET Windows
Het code venster (View Code, F7, dubbelklik control) Schrijven van de code Outlining : routines en #Region ....#End Region directive Visual Basic.NET
16
2.4 Visual Studio.NET Windows
De takenlijst (View > Show Tasks) Beheer van taken binnen de solution Voorgedefinieerde tokens (Tools > Options > Environment > Task List) Fouten bij compilatie en runnen van de code Visual Basic.NET
17
2.5 Help Help Intern (venster in IDE) of extern(pop up) => Instellen via Start Page > My profile Help menu Dynamic Help : Venster met lijst van artikelen omtrent huidige context Activeren via Help > Dynamic Help Bevat toolbar met icons : contents, index, search Context-sensitive help (F1) Venster met uitleg over geselecteerde item Visual Basic.NET
18
2.6 Een eerste Forms programma
De verschillende stappen in het ontwikkelproces : Maak een analyse Creëer de user interface Stel de properties in van de interface objecten Schrijf code Maak de klassen Codeer de events Bewaar het project Test en debug de applicatie Maak een executable Creëer een setup applicatie voor distributie Visual Basic.NET
19
2.6 Een eerste Forms programma
Demo Visual Basic.NET
20
2.6 Een eerste Forms programma
Creatie van een Windows Applicatie Visual Basic.NET
21
2.6 Een eerste Forms programma
Code van formulier Formulieren als klasse (lijn 1 en 2) Door Windows Form Designer gegenereerde code Visual Basic.NET
22
2.6 Een eerste Forms programma
#Region " Windows Form Designer generated code " Public Sub New() MyBase.New() 'This call is required by the Windows Form Designer. InitializeComponent() 'Add any initialization after the InitializeComponent() call End Sub 'Form overrides dispose to clean up the component list. Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) If disposing Then If Not (components Is Nothing) Then components.Dispose() End If MyBase.Dispose(disposing) Friend WithEvents Label1 As System.Windows.Forms.Label Friend WithEvents PictureBox1 As System.Windows.Forms.PictureBox Code Regions Bevat door Windows For Designer gegenereerde code Visual Basic.NET
23
Instantiatie van de controls
'Required by the Windows Form Designer Private components As System.ComponentModel.Container 'NOTE: The following procedure is required by the Windows Form Designer 'It can be modified using the Windows Form Designer. 'Do not modify it using the code editor. <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent() Dim resources As System.Resources.ResourceManager = New System.Resources.ResourceManager(GetType(Form1)) Me.Label1 = New System.Windows.Forms.Label() Me.PictureBox1 = New System.Windows.Forms.PictureBox() Me.SuspendLayout() ' 'Label1 Me.Label1.Font = New System.Drawing.Font("Microsoft Sans Serif", 24.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) Me.Label1.Location = New System.Drawing.Point(76, 16) Me.Label1.Name = "Label1" Me.Label1.Size = New System.Drawing.Size(272, 80) Me.Label1.TabIndex = 0 Me.Label1.Text = "Welcome to Visual Basic!" Me.Label1.TextAlign = System.Drawing.ContentAlignment.TopCenter Attribuut : extra info voor compiler,nl bij debugging niet stap per stap de code doorlopen. Instantiatie van de controls Instellen van de properties van het label Visual Basic.NET
24
Instellen van de properties van picturebox
' Me.PictureBox1.Image = CType(resources.GetObject("PictureBox1.Image"), System.Drawing.Bitmap) Me.PictureBox1.Location = New System.Drawing.Point(8, 112) Me.PictureBox1.Name = "PictureBox1" Me.PictureBox1.Size = New System.Drawing.Size(424, 208) Me.PictureBox1.TabIndex = 1 Me.PictureBox1.TabStop = False 'Form1 Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13) Me.BackColor = System.Drawing.Color.FromArgb(CType(192, Byte), CType(255, Byte), CType(255, Byte)) Me.ClientSize = New System.Drawing.Size(440, 365) Me.Controls.AddRange(New System.Windows.Forms.Control() {Me.PictureBox1, Me.Label1}) Me.Name = "Form1" Me.Text = "A Simple Program" Me.ResumeLayout(False) End Sub #End Region End Class Instellen van de properties van picturebox Instellen van de properties van het formulier Visual Basic.NET
25
AssemblyInfo.vb Imports System.Reflection
Imports System.Runtime.InteropServices ' General Information about an assembly is controlled through the following ' set of attributes. Change these attribute values to modify the information ' associated with an assembly. ' Review the values of the assembly attributes <Assembly: AssemblyTitle("")> <Assembly: AssemblyDescription("")> <Assembly: AssemblyCompany("")> <Assembly: AssemblyProduct("")> <Assembly: AssemblyCopyright("")> <Assembly: AssemblyTrademark("")> <Assembly: CLSCompliant(True)> 'The following GUID is for the ID of the typelib if this project is exposed to COM <Assembly: Guid("D28FA763-15E4-463A-B62D-83CC34875B4C")> ' Version information for an assembly consists of the following four values: ' Major Version ' Minor Version ' Build Number ' Revision ' You can specify all the values or you can default the Build and Revision Numbers ' by using the '*' as shown below: <Assembly: AssemblyVersion("1.0.*")> AssemblyInfo.vb Visual Basic.NET
26
2.6 Een eerste Forms programma
Compileren van programma Build > Build Solution Creëert een .exe bestand Runnen van programma Debug > Start F5 Of klik Beëindigen programma Sluit programmavenster Debug > Stop debugging Shift F5 Of Klik Visual Basic.NET
27
2.6 Een eerste Forms programma
Aangemaakte bestanden Windows Form : .vb Class : .vb Module : .vb AssemblyInfo : .vb Assembly resource file : .resx (bestand gebruikt om resources te definieren en editeren. Bvb verschillende talen) Solution : .sln (.suo bevat customisatie gebruiker) Project : .vbproj (.vbproj.user bevat customisatie gebruiker) Visual Basic.NET
28
2.6 Een eerste Forms programma
GUI’s zijn Event driven : de loop van het programma wordt bepaald door gebeurtenissen. Gebeurtenissen worden veroorzaakt door: de gebruiker (muisklik, typen, …) systeem (timer,…) externe factoren ( die binnenkomt, …) door andere objecten (Word, …) Worden afgehandeld in event-handlers Exit program Enter text Click a button Visual Basic.NET
29
2.6 Een eerste Forms programma
Aanmaken van event handler Naam : naamControl_naamEvent Code schrijf je in het Code Editor Window : in Solution Explorer Window, selecteer Form > Rechtermuisklik > View code In Design Venster > Rechtermuisklik > View Code of dubbelklik het besturingselement Selecteer het tabblad Visual Basic.NET
30
2.6 Een eerste Forms programma
Voorbeeld : OK – knop : vervangt tekst in label Visual Basic.NET
31
2.7 Een eerste Console programma
Console application Enkel tekst output Output wordt getoond in een command window Demo 1 : console programma dat de lijn tekst “Welcome to Visual Basic” weergeeft gebruik makend van de klasse Console Visual Basic.NET
32
2.7 Een eerste Console programma
IDE van een console applicatie Editor venster Visual Basic.NET
33
2.7 Een eerste Console programma
Single-quote character (') duidt aan dat de rest van de lijn commentaar is. De code 1 ' Welcome1.vb 2 ' Simple Visual Basic program. 3 4 Module modFirstWelcome 5 Sub Main() Console.WriteLine("Welcome to Visual Basic!") End Sub ' Main 9 10 End Module ' modFirstWelcome Visual Basic console applicaties bestaan uit stukjes, modules genaamd Het Console.WriteLine statement schrijft tekst output naar de console De Main procedure is het startpunt en is aanwezig in elk console programma. Welcome to Visual Basic! ' Andere oplossing Console.Write("Welcome to ") 8 Console.WriteLine("Visual Basic!") Visual Basic.NET
34
2.7 Een eerste Console programma
IntelliSense Partially-typed member Member list Beschrijving van highlighted member Visual Basic.NET
35
2.7 Een eerste Console programma
Parameter info en Parameter List Windows Up arrow Down arrow Parameter List window Parameter Info window Visual Basic.NET
36
2.7 Een eerste Console programma
IDE rapporteert syntax fouten Het lijnnummer in de task list komt niet altijd overeen met de lijn met de syntax fout Haakje vergeten => syntax error Blauw onderlijnd betekent syntax fout Task List window Error(s) beschrijving Visual Basic.NET
37
2.7 Een eerste Console programma
Commentaar Begin elk programma met enkele lijnen commentaar Modules De naam van een module moet met mod beginnen Procedures Indenteer Visual Basic.NET
38
2.7 Een eerste Console programma
Demo 2 : Weergave van vierkantswortel van 2 gebruik makend van dialoog vensters Weergeven van berichten De klasse Messagebox Empty command window Visual Basic.NET
39
2.7 Een eerste Console programma
1 ' Fig. 3.20: SquareRoot.vb 2 ' Displaying square root of 2 in dialog. 3 4 Imports System.Windows.Forms ' Namespace containing MessageBox 5 6 Module modSquareRoot 7 8 Sub Main() 9 ' Calculate square root of 2 Dim root As Double = Math.Sqrt(2) 12 ' Display results in dialog MessageBox.Show("The square root of 2 is " & root, _ "The Square Root of 2") 16 End Sub ' Main 17 18 End Module ' modThirdWelcome Sqrt methode van de Math klasse : berekend vierkantswortel van 2 Methode Show van de klasse MessageBox Het Double data type slaat floating-point getallen op Line-continuation character Visual Basic.NET
40
2.7 Een eerste Console programma
Gebruik van de klasse Messagebox Assembly Een gecompileerd bestand dat een aantal klassen bevat Het bestand heeft een a .dll (or dynamic link library) extensie. Voorbeeld Klasse MessageBox , bevindt zich in de assembly System.Windows.Forms.dll Opzoeken van info over assembly MSDN Documentatie Select Help > Index… Visual Basic.NET
41
2.7 Een eerste Console programma
1. Geef search string in 2. Stel Filter in 3. Selecteer de MessageBox documentatie Assembly die de klasse MessageBox bevat Requirements section heading MessageBox class documentatie Visual Basic.NET
42
2.7 Een eerste Console programma
Gebruiken van een assembly in een project Reference Je moet een reference naar de assembly toevoegen als je een klasse wenst te gebruiken Voorbeeld Als je de klasse MessageBox wenst te gebruiken moet je een verwijzing toevoegen naar System.Windows.Forms Imports Toevoegen bovenaan het klassebestand Als je dit Imports statement vergeet toe te voegen voor een referenced assembly dan krijg je een syntax fout Visual Basic.NET
43
2.7 Een eerste Console programma
1. Solution Explorer voordat reference werd toegevoegd 2. Selecteer Project > Add Reference … System.Windows.Forms reference 3. Solution Explorer nadat reference werd toegevoegd Visual Basic.NET
44
2.8 Rekenkundige operatoren
Visual Basic.NET
45
2.8 Rekenkundige operatoren
Uitvoervolgorde Evaluatie van operator vindt van links naar rechts plaats Bewerkingen tussen haakjes worden eerst geëvalueerd Machtsverheffing Positief en Negatief Vermenigvuldigen en deling (float) Deling (integer) Modulo Optellen en aftrekken Visual Basic.NET
46
Deze variabelen slaan strings op
1 ' Fig. 3.10: Addition.vb 2 ' Addition program. 3 4 Module modAddition 5 Sub Main() 7 ' variables for storing user input Dim firstNumber, secondNumber As String 10 ' variables used in addition calculation Dim number1, number2, sumOfNumbers As Integer 13 ' read first number from user Console.Write("Please enter the first integer: ") firstNumber = Console.ReadLine() 17 ' read second number from user Console.Write("Please enter the second integer: ") secondNumber = Console.ReadLine() 21 ' convert input values to Integers number1 = firstNumber number2 = secondNumber 25 sumOfNumbers = number1 + number2 ' add numbers 27 ' display results Console.WriteLine("The sum is {0}", sumOfNumbers) 30 End Sub ' Main 32 End Module ' modAddition Deze variabelen slaan strings op Declaratie begint met keyword DIM Eerste ingegeven waarde wordt toegewezen aan variabele firstNumber Deze variabelen slaan integers op Methode ReadLine pauzeert programma en wacht op user input Impliciete conversie van String naar Integer Sommeren van integers. Resultaat wordt opgeslaan in variable sumOfNumbers {0} betekent dat we de waarde van een variabele printen Visual Basic.NET
47
2.8 Rekenkundige operatoren
Variabele declaratie Begint met keyword DIM gevolgd door de namen van de variabelen gescheiden door een komma het keyword AS en het type Console.Readline Console.Writeline Visual Basic.NET
48
2.8 Relationele operatoren
Visual Basic.NET
49
Variables van hetzelfde type kunnen in 1 lijn gedeclareerd worden
1 ' Fig. 3.19: Comparison.vb 2 ' Using equality and relational operators. 3 4 Module modComparison 5 6 Sub Main() 7 ' declare Integer variables for user input Dim number1, number2 As Integer 10 ' read first number from user Console.Write("Please enter first integer: ") number1 = Console.ReadLine() 14 ' read second number from user Console.Write("Please enter second integer: ") number2 = Console.ReadLine() 18 If (number1 = number2) Then Console.WriteLine("{0} = {1}", number1, number2) End If 22 If (number1 <> number2) Then Console.WriteLine("{0} <> {1}", number1, number2) End If 26 If (number1 < number2) Then Console.WriteLine("{0} < {1}", number1, number2) End If 30 If (number1 > number2) Then Console.WriteLine("{0} > {1}", number1, number2) End If Variables van hetzelfde type kunnen in 1 lijn gedeclareerd worden 1ste parameter : outputformaat {0} : verwijst naar de waarde van de eerste variabele {1} : verwijst naar de waarde van de 2de variabele 2de en 3de parameter : resp. parameter 0 en 1 Visual Basic.NET
50
35 If (number1 <= number2) Then
34 If (number1 <= number2) Then Console.WriteLine("{0} <= {1}", number1, number2) End If 38 If (number1 >= number2) Then Console.WriteLine("{0} >= {1}", number1, number2) End If 42 43 End Sub ' Main 44 45 End Module ' modComparison Please enter first integer: 1000 Please enter second integer: 2000 1000 <> 2000 1000 < 2000 1000 <= 2000 Please enter first integer: 515 Please enter second integer: 49 515 <> 49 515 > 49 515 >= 49 Please enter first integer: 333 Please enter second integer: 333 333 = 333 333 <= 333 333 >= 333 Visual Basic.NET
51
Oefening 1 De GUI bestaat uit 2 labels (gele achtergrond, tekstgrootte 12 punt, gecentreerd), een Maand kalender en een RichTextBox. Zorg dat alles mooi gealigneerd en gecentreerd staat, dat de spacing overal gelijk is) label MonthCalendar RichTextBox Visual Basic.NET
52
Oefening 2 User interface Visual Basic.NET
53
Oefening 2 Properties Visual Basic.NET
54
Oefening 2 Events Private Sub cmdOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdOK.Click MessageBox.Show("User Name = " & txtUsername.Text & ", Password = " & txtPassword.Text) End Sub Private Sub cmdCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdCancel.Click MessageBox.Show("ByeBye") Application.Exit() Private Sub txtUsername_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtUsername.TextChanged If txtUsername.Text <> "" And txtPassword.Text <> "" Then cmdOK.Enabled = True Else cmdOK.Enabled = False End If Private Sub txtPassword_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtPassword.TextChanged txtUsername_TextChanged(sender, e) Visual Basic.NET
55
Oefening 3 Rekenmachine voor de berekening van de verloning
Uren <= 40u/week : worden verrekend aan uurloon Uren > 40u/week : worden verrekend aan uurloon * 1,5 Visual Basic.NET
56
Oefening 3 Properties Visual Basic.NET
57
Oefening 3 Private Sub btnCalculate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCalculate.Click Dim dblHours As Double Dim decWage As Decimal Dim decEarnings As Decimal 'assign values from user input dblHours = Val(txtHours.Text) decWage = Val(txtWage.Text) If dblHours <= 40 Then decEarnings = decWage * dblHours Else decEarnings = (decWage * 40) + (dblHours - 40) * (1.5 * decWage) End If lblEarningResult.Text = String.Format("{0:C}", decEarnings) End Sub Visual Basic.NET
Verwante presentaties
© 2024 SlidePlayer.nl Inc.
All rights reserved.