Datu bāzes tehnoloģijas | Izglītība nedrīkst būt mērķis ...
Rīgas 85. vidusskola
mājas darbs mācību priekšmetā
Informātika
Programmēšanas valoda Visual Basic 2008
Izstrādāja: Zane Eiduka
Skolotājs: Jānis Aizupietis
Rīga, 2009.g.
Anotācija
Mūsdienās ir ļoti svarīgi ne tikai izmantot esošās informācijas sistēmas, bet veidot arī jaunas, lai nodrošinātu cilvēkus ar nepieciešamajiem datiem un to apstrādi.
Bioloģijas zinātniski pētnieciskajā darbā man jāanalizē Latvijas ārstniecības augu audzēšana un jāveido atbilstošā informācijas sistēma. Esmu izvēlējusies informācijas sistēmu veidot Visual Basic 2008 programmēšanas valodā un datu glabāšanai izmantot datu bāzes vadības sistēmu MS Access. Plānoju lietojumus izveidot interneta lapas veidā (veidot web lietojumus). Tas labi saskan ar mācību uzdevumiem, kas man jāapgūst Informātikas mācību priekšmetā.
Satura rādītājs
| | |lpp. |
|1. |Programmēšanas valoda BASIC |4 |
|2. |Jauna projekta (lietojuma) veidošana programmēšanas valodas Visual Basic 2008 programmēšanas vidē |5 |
|3. |Galvenais Visual Basic 2008 programmēšanas vides logs |6 |
|4. |Vizuālās programmēšanas pamatdarbības |7 |
|5. |Izvēļu sarakstu veidošana Visual Basic formās |9 |
|6. |Mainīgo datu tipi programmēšanas valodā Visual Basic |12 |
|7. |Programmēšanas valodas Visual Basic vadības operatori |13 |
|8. |Programmēšanas valodā Visual Basic būtiskākās iekļautās funkcijas |14 |
|9. |Visual Basic programmu tipi |15 |
|10. |Pirmais VB lietojuma piemērs |17 |
|11. |Otrais VB lietojuma piemērs |19 |
|12. |Trešais VB lietojuma piemērs |21 |
|13. |Grafisko iespēju izmantošana Visual Basic valodā |23 |
|13.1. |Taisnstūra zīmēšana |23 |
|13.2. |Elipses zīmēšana |24 |
|13.3. |Taisnes zīmēšana |25 |
|13.4. |Loka zīmēšana |26 |
|14. |Attēla (PictureBox objekta) pārvietošana pa labi, kreisi, uz augšu, uz leju |27 |
|15. |Timer tipa elementa izmantošana |28 |
|16. |Grafikas elementu zīmēšanas piemērs |30 |
1. Programmēšanas valoda BASIC
Programmēšanas valodu BASIC (Beginner's All-purpose Symbolic Instruction Code) 1964. gadā izveidoja ASV Dartmutas koledžas pasniedzēji Dzons Kemeni un Tomass Kurtcs. Tā bija domāta topošo programmētāju apmācībai.
Pagājušā gadsimta 80-ajos gados dažādas programmu izstrādes firmas bija izveidojušas vairāk kā 10 dažādus programmēšanas valodas BASIC variantus. Populārākie bija firmas Microsoft QuickBasic un firmas Borland TurboBasic. 1989. gadā šīs firmas savstarpēji vienojās, ka turpmāk firma Microsoft attīsta BASIC valodu, bet Borland – PASCAL valodu. Liekas, ka svarīgu lomu nospēlēja Microsoft dibinātāja Bila Geitsa aizraušanas ar BASIC valodu – savu pirmo projektu viņš realizēja tieši šajā valodā un bieži saviem tituliem pievienoja: "Esmu BASIC programmētājs."
1991. gadā tika radīta vizuālā programmēšanas valoda Visual Basic 1.0. Tās autors bija Alans Kupers – neatkarīgs programmētājs, kas savas idejas prototipu pārdeva firmai Microsoft. Vizuālās programmēšanas pamatideja ir vienkārša: daudzas programmu daļas programmētājam ir vieglāk vizuāli norādīt un vizuāli izveidot, nevis rakstīt atbilstošo programmas kodu. Tā veidošana uzticēta programmēšanas videi, izmantojot vizuālās norādes. Tiek izveidots lietojuma formas karkass un šajā karkasā no Rīku saraksta (Toolbox) tiek "ievilkts" nepieciešamais elements. Elementa izveidošanas kodu ģenerē pati sistēma.
[pic] [pic]
Programmēšanas valoda Visual Basic kļuva par ciltstēvu ātrās lietojumu izstrādes rīkiem (Rapid Application Development, RAD).
1993. gadā firma Microsoft paziņoja par jaunas programmēšanas sistēmas Visual Basic for Application (VBA) izstrādi. To bija paredzēts iekļaut dažādās Microsoft programmu paketēs sākot ar Microsoft Office, lai pilnveidotu un paplašinātu to iespējas.
Mūsdienās plaši tiek lietotas gan Visual Basic gan Visual Basic for Application programmēšanas sistēmas. Ļoti populāra bija Visual Basic versija 6.0. Tiek vērtēts ka patreiz programmētāju skaits pasaulē ir ap 15 miljoniem un ne mazāk kā 70% no tiem izmanto arī Visual Basic un Visual Basic for Application. Jaunākā Visual Basic versija, kura jau ieguvusi arī plašu popularitāti ir Visual Basic 2008. Ar tās palīdzību var izstrādāt visdažādāko tipa lietojumprogrammas gan vienam datoram, gan lokālā tīkla datoriem, gan Interneta lietotājiem.
2. Jauna projekta (lietojuma) veidošana programmēšanas valodas Visual Basic 2008 programmēšanas vidē
Jauna projekta veidošanas uzsākšana: File ( New Project
[pic]
Izmantojamā lietojuma šablona izvēle: Visual Basic ( Windows ( Windows Form Application. Tiek izvēlēts projekts ar vienu ekrāna formu.
[pic]
Izveidotais jaunais lietojums Lietojums_s ar vienu ekrāna formu Forma_1 (pagaidām tikai formas karkass).
[pic]
3. Galvenais Visual Basic 2008 programmēšanas vides logs
Galvenais Visual Basic 2008 programmēšanas vides logs iekļauj virkni pakārtoto logu.
[pic]
4. Vizuālās programmēšanas pamatdarbības
Izveidosim lietojuma formu, kurā lietotājs ievada daudzumu un cena un programma aprēķina un izvada kopējo samaksu.
[pic]
Paskaidrojošo tekstu izvadei formā tiek lietots elements Label, Datu ievadei un izvadei izmanto elementu TextBox, izpildāmo darbību aktivēšanai taustiņus Button. Taustiņiem tiek piekārtotas notikumu procedūras. Tās izpildās, kad nospiež taustiņu.
[pic]
Lietojuma formas loga apskate projektēšanas (design) režīmā
[pic] [pic]
Lietojuma formas loga apskate programmas (code) režīmā
[pic]
[pic] [pic] [pic]
5. Izvēļu sarakstu veidošana Visual Basic formās
1. Izvēļu saraksta Combo Box izveidošana
[pic]
[pic] [pic]
2. Izvēļu saraksta ListBox izveidošana
[pic] [pic]
[pic]
3. Izvēļu saraksta CheckedBox izveidošana
[pic]
[pic]
4. Skaitļu izvēles saraksta NumericUpDown izveidošana
[pic] [pic]
[pic]
5. Datuma un laika izvēļu saraksts DataTimePicker
[pic]
[pic]
6. Mainīgo datu tipi programmēšanas valodā Visual Basic
1. Mainīgā nosaukumā nevar būt vairāk kā 255 simboli.
2. Mainīgā nosaukums sākas ar burtu vai pasvītrojuma zīmi.
|Vienkārša mainīgā tipi |Definējums | |
|Integer |Dim i, j As Integer |Līdz 2 147 483 647 |
|Long Integer |Dim k, l As Long |Līdz 9 223 372 036 854 775 807 |
|Single precision |Dim a, b As Single |Līdz 3.4028235 * 1038 |
|Double precision |Dim c, d As Double | |
|String |Dim e,f As String | |
|Char |Dim c As Char |Viens simbols |
|Boolean |Dim l As Boolean |True, False |
|Date |Dim d As Date |Satums un laiks |
|Variant |Dim x As Variant |Tips pielāgojas vērtības tipam |
|Objekta tipa mainīgie | | |
|Point |Dim punkts As Point | |
| |punkts = New Point(110, 10) | |
|Rectangle |Dim taisnsturis As New Rectangle(10, 10, 200, 50) | |
Dim i As Integer = 25
Dim i, j As Integer, m As String
Private k As Integer = 7
Public p As String = "ābols"
Konstanšu definēšana
Const mm As Integer = 123
Masīvu definēšana
Dim mas(20) As integer 'Masīva elementu numerācija no 0 līdz 20
Dim mas1(10, 10) as String 'Divdimensiju masīvs
Dim mas2() As Integer = { 1, 2, 3} 'Masīva 3 elementiem piešķirtas vērtības
Dim mas3( , ) As Integer = { { 1, 2, 3} , {4, 5} }
7. Programmēšanas valodas Visual Basic vadības operatori
1. If – Else – End If konstrukcija
If noteikums Then
darbību operatori
Elseif noteikums Then
Darbību operatori
Else
Darbību operatori
End If
Loģikas operācijas : And, Or, Not, Xor
2. Select Case – End Case konstrukcija
Select Case mainīgais
Case 1.vērtība
Darbību operatori
Case 2.vērtība
Darbību operatori
...
End Case
3. Cikla konstrukcijas
For i = 1 To 7
Darbību operatori
Exit For
Next i
Piemērs. Skaitļu no 1 līdz 100 summas iegūsana
Dim i, n As Integer
n = 0
for i = 1 to 100
n = n + i
Next i
Piemērs. Skaitļu no 1 līdz 100 ierakstīšana masīvā
Dim i As Integer
Dim mas(99) As Integer
for i = 1 to 100
mas(i-1) = i
Next i
8. Programmēšanas valodā Visual Basic būtiskākās iekļautās funkcijas
|Nosaukums |Skaidrojums |
|Abs() |Skaitļa absolūtās vērtības iegūšana |
|ASC() |Simbola koda iegūšana |
|CInt() |Pārvērš izteiksmi veselā skaitlī |
|CStr() |Pārvērš izteiksmi tekstā (String) |
|Date |Esošā datuma iegūšana |
|DateString() |Datuma iegūšana teksta formātā |
|DateTime() |Iegūstam esošo datumu un laiku |
|Day() |Nosaka nedēļas dienu (sākot no svētdienas) |
|Hour() | |
|InStr() |Nosaka vienas simbolu rindas eksistēšanu otrā |
|LCace() |Pārveido par maziem burtiem |
|Len() |Simbolu rindas garuma iegūšana |
|Mid() |No dotās simbolu rindas atgriež norādīto apakšrindu |
|Minute() | |
|Month() | |
|Now |Atgriež sistēmas esošo datumu |
|Rnd() |Gadījuma skaitļu ģenerēšana |
|Second() | |
|Sgn(n) |Slēdža funkcija (-1; 0 ; 1) |
|Sqr(n) |Kvadrātsaknes vilkšana |
|Str(n) |Skaitļa pārvēršana simbolu rindā |
|StrComp() |Simbolu rindu salīdzināšana |
|Time |Esošā laika iegūšana |
|Trim() |Tukšumu nodzēšana teksts rindas sākumā un beigās |
|Val(n) |Simbolu rindas pārvēršana par skaitli |
|Year() | |
9. Visual Basic programmu tipi
Visual Basic programmas tiek glabātas trīs tipu programmu moduļos:
1) formas programmu modulis. Katrai formai ir savs programmu modulis.
2) standarta programmu modulis. Ja lietojumā ir vairākas formas, tad kopējās programmas var tikt glabātas atsevišķā standarta programmu modulī.
3) klases programmu modulis. Tas tiek veidots, ja tiek izmantotas objekt-orientētās programmēšanas iespējas.
[pic] [pic]
Formas šablona izvēle
[pic]
[pic]
Programmēšanas valodā Visual Basic ir sekojoši procedūru tipi:
1) Sub tipa procedūras. Tās neatgriež mainīgo vērtības, tikai izpilda definētās darbības.
Public vai Private Sub procedūras_nosaukums(parametri)
darbību operatori
End Sub
2) Notikumu procedūras. Formām un tās elementiem ir īpašības (properties) un notikumi (events). Notikumu procedūras izpildās, kad noticis attiecīgais formas vai elementa notikums.
Private Sub elementa_nosaukums_notikima_nosaukums(parametri) Handles
notikuma_nosaukums
darbību operatori
End Sub
3) Function tipa procedūras (funkcijas). Tās var atgriezt vērtības izsaucējā procedūrā.
Private vai Public Function nosaukums(Parametri) As
atgriežamās_vērtības_tips
darbību operatori
End Function
Parametru vērtību nodošanas tipi:
1) ByVal – vērtību kopijas nodošana;
2) By Ref – atsauces nodošana.
10. Pirmais VB lietojuma piemērs
Ievadām divus skaitļus, norādām izpildāmo darbību un iegūstam rezultātu.
[pic]
Izveidotā lietojuma programma
Public Class Forma_1
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
TextBox3.Text = Val(TextBox1.Text) * Val(TextBox2.Text)
End Sub
Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
End
End Sub
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
TextBox3.Text = Val(TextBox1.Text) + Val(TextBox2.Text)
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
TextBox3.Text = Val(TextBox1.Text) - Val(TextBox2.Text)
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
TextBox3.Text = Val(TextBox1.Text) / Val(TextBox2.Text)
End Sub
End Class
11. Otrais VB lietojuma piemērs
Ar gadījuma skaitļu ģeneratoru tiek ģenerēti 3 skaitļi un ierakstīti 3 TextBox elementos. Ja viens no gadījuma skaitļiem ir 7, tad ir uzvara un parādās attēls. Citādi ir zaudējums.
[pic]
Public Class Forma_1
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
End
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
TextBox5.Text = "Zaudējums!"
If TextBox1.Text = 7 Then
TextBox5.Text = " Uzvara!"
TextBox4.Text = "1. skaitlis"
PictureBox1.Visible = True
End If
If TextBox2.Text = 7 Then
TextBox5.Text = " Uzvara!"
TextBox4.Text = "2. skaitlis"
PictureBox1.Visible = True
End If
If TextBox3.Text = 7 Then
TextBox5.Text = " Uzvara!"
TextBox4.Text = "3. skaitlis"
PictureBox1.Visible = True
End If
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button3.Click
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
TextBox4.Text = ""
TextBox5.Text = ""
PictureBox1.Visible = False
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button4.Click
Dim i, j, k As Integer
i = Rnd() * 10
TextBox1.Text = i
j = Rnd() * 10
TextBox2.Text = j
k = Rnd() * 10
TextBox3.Text = k
PictureBox1.Visible = False
End Sub
End Class
12. Trešais VB lietojuma piemērs
Ar izvēļu sarakstu (comboBox) palīdzību tiek norādīti augļi un tiek ievadīti attiecīgie daudzumi (TextBox elementos). Nospiežot taustiņu Summa, programma nosaka un izvada cenas un aprēķina kopējo summu.
[pic]
[pic]
Piemērā izveidotā programma
Public Class Forma_1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button1.Click
End
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button2.Click
' Cenu noteikšana
If ComboBox1.Text = "āboli" Then
TextBox4.Text = 1
ElseIf ComboBox1.Text = "bumbieri" Then
TextBox4.Text = 2
ElseIf ComboBox1.Text = "plūmes" Then
TextBox4.Text = 2
ElseIf ComboBox1.Text = "ķirši" Then
TextBox4.Text = 3
End If
If ComboBox2.Text = "āboli" Then
TextBox5.Text = 1
ElseIf ComboBox2.Text = "bumbieri" Then
TextBox5.Text = 2
ElseIf ComboBox2.Text = "plūmes" Then
TextBox5.Text = 2
ElseIf ComboBox2.Text = "ķirši" Then
TextBox5.Text = 3
End If
If ComboBox3.Text = "āboli" Then
TextBox6.Text = 1
ElseIf ComboBox3.Text = "bumbieri" Then
TextBox6.Text = 2
ElseIf ComboBox3.Text = "plūmes" Then
TextBox6.Text = 2
ElseIf ComboBox3.Text = "ķirši" Then
TextBox6.Text = 3
End If
' Summas aprēķināšana
Dim a, b, c, d As Single
d = 0
a = Val(TextBox1.Text) * Val(TextBox4.Text)
b = Val(TextBox2.Text) * Val(TextBox5.Text)
c = Val(TextBox3.Text) * Val(TextBox6.Text)
d = a + b + c
TextBox7.Text = d
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button3.Click
' Elementu vērtību nodzēšana
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
TextBox4.Text = ""
TextBox5.Text = ""
TextBox6.Text = ""
TextBox7.Text = ""
End Sub
End Class
13. Grafisko iespēju izmantošana Visual Basic valodā
Lai izveidotu zīmējumu, vispirms ir jāizveido Graphics tipa objekts g, kurš ietvers visas zīmējuma komponentes. Tiek lietoti vairāki varianti grafiskā objekta definēšanai. Populārākais ir sekojošs:
Dim g As Graphics = Me.CreateGraphics
13.1. Taisnstūra zīmēšana
Lai uzzīmētu taisnstūri:
1) tiek izveidots grafiskais objekts g, kurš ietver visus zīmējamos grafikas elementus;
Dim g As Graphics = Me.CreateGraphics
2) tiek izveidots masīvs taisnsturi (0), kura elementi (0, 1, 2, ...) katrs satur objektu Rectangle (taisnstūris) ar zīmējamā taisnstūra koordinātēm X1,Y1, X2, Y2. Ja zīmēsim vienu taisnstūri, masīvā ir vajadzīgs viens Rectangle objekts, tāpēc rakstām taisnsturi(0) – elementu numerācija sākas no 0.
Dim taisnsturi(0) As Rectangle
taisnsturi(0) = New Rectangle(10, 10, 100, 20)
3) taisnstūra zīmēšana tiek veikta ar rīku "spalva" (pen), tāpēc jānorāda spalvas krāsa (color) un biezums (1, 2, 3, ...);
Dim spalva As New Pen(Color.Blue, 3)
4) taisnstūra zīmēšanu veic ar DrawRectangle() metodi, norādot "spalvu"un taisnstūra objektu ar koordinātēm, kurš ierakstīts masīvā taisnsturi;
g.DrawRectangles(spalva, taisnsturi)
5) taisnstūra aizkrāsošanu veic ar "otām" (brushes). Jānorāda "otas" krāsa (piemēram, Yellow un taisnstūra objekts ar koordinātēm (tas ir masīvā taisnsturi):
g.FillRectangles(Brushes.Yellow, taisnsturi)
Kvalitatīva attēla iegūšanai vēlams vispirms veikt soli 5 un tad 4.
[pic] [pic]
Public Class Forma_1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button1.Click
'Grafiskā objekta izveidošana kuršs saturēs visas grafiskos elementus
Dim g As Graphics = Me.CreateGraphics
'Taisnstūra zīmēšana
Dim taisnsturi(0) As Rectangle: taisnsturi(0) = New Rectangle(10, 10, 100, 20)
Dim spalva As New Pen(Color.Blue, 3)
g.FillRectangles(Brushes.Yellow, taisnsturi)
g.DrawRectangles(spalva, taisnsturi)
End Sub
End Class
13.2. Elipses zīmēšana
Lai uzzīmētu elipsi:
1) tiek izveidots grafiskais objekts g, kurš ietver visus zīmējamos grafikas elementus;
Dim g As Graphics = Me.CreateGraphics
2) elipse tiek noteikta ar tai apvilkto taisnstūri. Tiek izveidots Rectangle objekta tipa mainīgais taisnsturis, kurš satur apvelkošā taisnstūra koordinātes X1,Y1, X2, Y2.
Dim taisnsturis As New Rectangle(10, 10, 200, 50)
3)elipses zīmēšana tiek veikta ar rīku "spalva" (pen), tāpēc jānorāda spalvas krāsa (color) un biezums (1, 2, 3, ...);
Dim spalva As New Pen(Color.Blue, 3)
4) elipses zīmēšanu veic ar DrawRectangle() metodi, norādot "spalvu"un taisnstūra objektu ar koordinātēm, kurš ierakstīts mainīgajā taisnsturis;
g.DrawEllipse(spalva, taisnsturis)
5) elipses aizkrāsošanu veic ar "otām" (brushes). Jānorāda "otas" krāsa (piemēram, Yellow) un taisnstūra objekts ar koordinātēm (tas ir mainīgajā taisnsturis):
g.FillEllipse(Brushes.LightCoral, taisnsturis)
Kvalitatīva attēla iegūšanai vēlams vispirms veikt soli 5 un tad 4.
[pic]
Public Class Forma_1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button1.Click
'Grafiskā objekta izveidošana kuršs saturēs visas grafiskos elementus
Dim g As Graphics = Me.CreateGraphics
'Elipses zīmēšana
Dim taisnsturis As New Rectangle(10, 10, 200, 50)
Dim spalva As New Pen(Color.Blue, 3)
g.FillEllipse(Brushes.LightCoral, taisnsturis)
g.DrawEllipse(spalva, taisnsturis)
End Sub
End Class
13.3. Taisnes zīmēšana
Lai uzzīmētu taisni:
1) tiek izveidots grafiskais objekts g, kurš ietver visus zīmējamos grafikas elementus;
Dim g As Graphics = Me.CreateGraphics
2) taisne tiek noteikta ar diviem punktiem. Tiek izveidots Point objekta tipa masīvs punkti(1), kurš satur divus punkta (Point) tipa objektus ar viņu X un Y koordinātēm.
Dim punkti(1) As Point
punkti(0) = New Point(110, 10)
punkti(1) = New Point(150, 70)
3)taisnes zīmēšana tiek veikta ar rīku "spalva" (pen), tāpēc jānorāda spalvas krāsa (color) un biezums (1, 2, 3, ...);
Dim spalva As New Pen(Color.Red, 4)
4) līnijas zīmēšanu veic ar DrawLines() metodi, norādot "spalvu"un masīvu punkti ar attiecīgo punktu koordinātēm;
g.DrawLines(spalva, punkti)
[pic]
Public Class Forma_1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button1.Click
'Grafiskā objekta izveidošana kuršs saturēs visas grafiskos elementus
Dim g As Graphics = Me.CreateGraphics
'Līnijas zīmēšana
Dim punkti(1) As Point
punkti(0) = New Point(110, 10)
punkti(1) = New Point(150, 70)
Dim spalva As New Pen(Color.Red, 4)
g.DrawLines(spalva, punkti)
End Sub
End Class
13.4. Loka zīmēšana
Lai uzzīmētu loku:
1) tiek izveidots grafiskais objekts g, kurš ietver visus zīmējamos grafikas elementus;
Dim g As Graphics = Me.CreateGraphics
2) loks tiek noteikta ar tam apvilkto taisnstūri un diviem leņķiem – leņķi, kur loks sākas, un leņķi, kur loks beidzas. Tiek izveidots Rectangle objekta tipa mainīgais taisnsturis, kurš satur apvelkošā taisnstūra koordinātes X1,Y1, X2, Y2. Tiek noteikti arī abi leņķi.
Dim taisnsturis As New Rectangle(10, 10, 100, 100)
Dim lenkis_s As Single = 30
Dim lenkis_b As Single = 240
3)loka zīmēšana tiek veikta ar rīku "spalva" (pen), tāpēc jānorāda spalvas krāsa (color) un biezums (1, 2, 3, ...);
Dim spalva As New Pen(Color.Brown, 2)
4)loka zīmēšanu veic ar DrawArc() metodi, norādot "spalvu"un taisnstūra objektu ar koordinātēm, kurš ierakstīts mainīgajā taisnsturis, kā arī abus leņķus;
g.DrawArc(spalva, taisnsturis, lenkis_s, Lenkis_b)
5)loka aizkrāsošanu veic ar "otām" (brushes). Jānorāda "otas" krāsa (piemēram, LightSeaGreen) un taisnstūra objekts ar koordinātēm (tas ir mainīgajā taisnsturis), kā arī divi aizpildes leņķi.
g.FillPie(Brushes.LightSeaGreen, taisnsturis, 40, 140)
[pic]
Public Class Forma_1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button1.Click
'Grafiskā objekta izveidošana kuršs saturēs visas grafiskos elementus
Dim g As Graphics = Me.CreateGraphics
'Loka zīmēšana
Dim taisnsturis As New Rectangle(10, 10, 100, 100)
Dim lenkis_s As Single = 30
Dim Lenkis_b As Single = 240
Dim spalva As New Pen(Color.Brown, 2)
g.FillPie(Brushes.LightSeaGreen, taisnsturis, 40, 140)
g.DrawArc(spalva, taisnsturis, lenkis_s, Lenkis_b)
End Sub
End Class
14. Attēla (PictureBox objekta) pārvietošana pa labi, kreisi, uz augšu, uz leju
[pic]
Public Class Forma_1
'Pārvietojamā objekta X un Y koordinātes
Public attels_x As Integer = 80 'Sākotnējā X koordinātes vērtība
Public attels_y As Integer = 80 'Sākotnējā Y koordinātes vērtība
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button2.Click
End
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button1.Click
'Kustība pa labi
attels_x = attels_x + 10 : PictureBox1.Left = attels_x
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button3.Click
'Kustība pa kreisi
attels_x = attels_x – 10 : PictureBox1.Left = attels_x
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button4.Click
'Kustība uz leju
attels_y = attels_y + 10 : = attels_y
End Sub
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button5.Click
'Kustība uz augšu
attels_y = attels_y – 10 : = attels_y
End Sub
End Class
15. Timer tipa elementa izmantošana
Izveidosim formu, kurā tiks veikta tekošā datuma un laika atkārtota izvade pēc noteiktiem laika intervāliem (piemēram, 1s). Nospiežot taustiņu Starts, sāk strādāt laika signālu ģenerators (taimers) – objekts Timer. Viņa īpašībās norādam, ka laika signālu atstarpe ir 1000 vienību, tas ir 1s. Pienākot laika signālam, taimera programma veic kārtējo tekošā datuma un laika izvadi. Rezultatā mēs redzam, ka tekošais laiks mainās.
[pic]
[pic] [pic]
Izveidojam formu, Ievietojam TextBox, Button un Timer elementus.
[pic]
Taimera izmantošanas programma
Public Class Forma_1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button1.Click
' Vadības taustiņa programma
If Me.Button1.Text = "Starts" Then
Me.Timer1.Start()
Me.Button1.Text = "Stop"
Else
Me.Timer1.Stop()
Me.Button1.Text = "Starts"
End If
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Timer1.Tick
' Taimera programma
Me.TextBox1.Text = System.DateTime.Now.ToLongDateString + " " + _
System.DateTime.Now.ToLongTimeString
End Sub
End Class
16. Grafikas elementu zīmēšanas piemērs
[pic]
[pic]
[pic]
Elipšu, taisnstūru un līniju veidošanas programmu kods
Public Class Forma_1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button1.Click
Dim g As Graphics = Me.CreateGraphics
Dim points(21) As Point
For i As Integer = 0 To 20 Step 2
points(i) = New Point(20 + 10 * i, 25 + 5 * i)
points(i + 1) = New Point(40 + 10 * i, 20 + 5 * i)
Next
Dim pn As New Pen(Color.Black, 3)
g.DrawLines(pn, points)
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button2.Click
Dim g As Graphics = Me.CreateGraphics
Dim pn As New Pen(Color.Black, 2)
Dim rows As Integer = 5
Dim width As Integer = 40, height As Integer = 20
Dim count As Integer
For n As Integer = 1 To rows : count += n : Next n
Dim rect(count - 1) As Rectangle
Dim i, j As Integer, k As Integer = 0
For i = 0 To rows - 1
For j = 0 To i
Rect(k) = New Rectangle(width * (rows / 2 + j - i / 2), _
height * (i + 1), width, height)
k += 1
Next j
Next i
g.DrawRectangles(pn, rect)
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button4.Click
End
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button3.Click
Dim g As Graphics = Me.CreateGraphics
Dim horizEllipse As New Rectangle(20, 20, 200, 100)
Dim vertEllipse As New Rectangle(20, 20, 200, 100)
For i As Integer = 0 To 10
horizEllipse.Inflate(0, -5)
vertEllipse.Inflate(-10, 0)
g.DrawEllipse(Pens.DarkRed, horizEllipse)
g.DrawEllipse(Pens.DarkBlue, vertEllipse)
Next
End Sub
End Class
17. Kustīga objekta programmas izveidošana
Kustīgo objektu var pārvietot ar taustiņu Uz augšu, Uz leju, Pa Kreisi, Pa labi palīdzību. Nospiežot taustiņu Starts/Stop kustīgais objekts pārvietojas pa ekrānu gadījuma virzienos. Pārvietojuma nosaukums parādās zem taustiņa TextBox elementā. Kustību var pārtraukt nospiežot taustiņu Starts/Stop.
Public Class Forma_1
'Pārvietojamā objekta X un Y koordinātes
Public attels_x As Integer = 80 'Sākotnējā X koordinātes vērtība
Public attels_y As Integer = 80 'Sākotnējā Y koordinātes vērtība
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button2.Click
'Programmas darbības izbeigšana
End
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button1.Click
'Kustība pa labi
attels_x = attels_x + 10
PictureBox1.Left = attels_x
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button3.Click
'Kustība pa kreisi
attels_x = attels_x - 10
PictureBox1.Left = attels_x
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button4.Click
'Kustība uz leju
attels_y = attels_y + 10
= attels_y
End Sub
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button5.Click
'Kustība uz augšu
attels_y = attels_y - 10
= attels_y
End Sub
Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles Button6.Click
' Taimera palaišana un apstādināšana (objekta kustības sākšana un beigšana)
TextBox1.Text = ""
If Me.Button6.Text = "Starts" Then
Me.Timer1.Start()
Me.Button6.Text = "Stop"
Else
Me.Timer1.Stop()
Me.Button6.Text = "Starts"
End If
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
TextBox1.Text = ""
'Kustības laukuma formā ņorādīšana
Dim x_min As Integer = 10
Dim x_max As Integer = 100
Dim y_min As Integer = 10
Dim Y_max As Integer = 100
Dim gad_sk As Single = 0.5
'solis - kustīgā objekta X un Y koordināšu vērtībuizmaiņu solis
'izm_x un izm_y - X un Y koordināšu izmaiņas
Dim solis, izm_x, izm_y As Integer
solis = 20
izm_x = 0 : izm_y = 0
'Gadījuma skaitļa ģenerēšana
gad_sk = Rnd()
'Pārvietošanās virziena noteikšana (izm_x, izm_y vērtību noteikšana)
If gad_sk < 0.25 Then
izm_x = solis
TextBox1.Text = "Pa labi"
ElseIf (gad_sk >= 0.25 And gad_sk < 0.5) Then
izm_x = -solis
TextBox1.Text = "Pa kreisi"
ElseIf (gad_sk >= 0.5 And gad_sk < 0.75) Then
izm_y = solis
TextBox1.Text = "Uz leju"
ElseIf gad_sk >= 0.75 Then
izm_y = -solis
TextBox1.Text = "Uz augšu"
End If
If attels_x < x_min Then
attels_x = attels_x + solis
End If
attels_x = attels_x + izm_x
attels_y = attels_y + izm_y
If attels_x < x_min Then
attels_x = attels_x + solis
End If
If attels_x > x_max Then
attels_x = attels_x - solis
End If
If attels_y < y_min Then
attels_y = attels_y + solis
End If
If attels_y > Y_max Then
attels_y = attels_y - solis
End If
'Pārvietojuma izpilde
PictureBox1.Left = attels_x
= attels_y
End Sub
End Class
18. Veselo gadījuma skaitļu (1, 2, 3, 4, 5) virkņu ģenerēšana
Ar lietojuma palīdzību tiek ģenerēta piecu veselu gadījuma skaitļu virkne. Tā tiks izmantota skolas Bioloģijas pulciņa projekta nodarbībā, lai skolnieku grupām (piecām) noteiktu jautājumu uzdošanas kārtību. Starprezultātu izvadi var atslēgt vai ieslēgt.
[pic]
[pic]
Programmas darbības pamatlgoritms:
1) masīva mas() piecos elementos ieraksta vērtības no 1 līdz 5;
2) ar gadījuma ģeneratoru noģenerē vērtību no 1 -5. Tā ir masīva elementa izvēle. Masīva attiecīgā elementa vērtību ierakstām rezultātu masīvā mas_rez() un veicam masīva elementu vērtību pārbīdi (izmantotā vērtība pazūd).
3) ar gadījuma ģeneratoru noģenerē vērtību no 1 -4. Tā ir masīva elementa izvēle. Masīva attiecīgā elementa vērtību ierakstām rezultātu masīvā mas_rez() un veicam masīva elementu vērtību pārbīdi (izmantotā vērtība pazūd).
4) un t.t. (1 -3, 1-2, 1).
Izveidojam masīvu no pieciem elementiem
(jāiegūst gadījumu virkne ar 5 vērtībām)
Noģenerējam veselo gadījuma skaitli 3
(jāņem trešā elementa vērtība 3 )
Noģenerējam vesalo gadījuma skaitli 1
(jāņem pirmā elementa vērtība 1 )
Noģenerējam veselo gadījuma skaitli 2
(jāņem otrā elementa vērtība 4 )
Noģenerējam vesalo gadījuma skaitli 1
(jāņem pirmā elementa vērtība 2 )
Jāņem palikušā pirmā elementa vērtība 5
------------------------------------------------------------------------------------------------
Vērtību pārbīdes masīvā
Lai iegūtu veselus gadījuma skaitļus no 1 līdz 5 izmantojam izteiksmes:
Rnd() ģenērē reālus gadījuma skaitļus diapazonā no 0 līdz 1.
Rnd() * 5 , iegūstam reālus gadījuma skaitļus no 0 līdz 5.
Rnd() * 5 + 1, iegūstam reālus gadījuma skaitļus no 1 līdz 6.
Int(Rnd() * 5 + 1), iegūstam veselus gadījuma skaitļus no 1 līdz 5.
Int(0.21 * 5 + 1) = Int(2.05) = 2
Int(0.31 * 5 + 1) = Int(2.55) = 2
Masīvu elementu numerācija sākas no 0 (0, 1, 2, 3, ...). Pirmais elements ir mas(0). otrais mas(1), un t.t. Lai vieglāk būtu uztvert masīvu elementu kārtību (lai varētu vieglāk sakārtojuma numerāciju 1, 2, 3, ... uztvert), tiek lietoti sekojoši pieraksti:
pirmajam masīva elementam mas(1-1);
otrajam masīva elementam mas(2-1);
un t.t.
Public Class Forma_1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
End
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
'Masīva mas () aizpildīšana ar vērtībām 1, 2, 3, 4, 5
Dim mas(4), i As Integer
For i = 1 To 5
mas(i - 1) = i
Next
'Masīva mas() vērtību izvade
TextBox1.Text = mas(0)
TextBox2.Text = mas(1)
TextBox3.Text = mas(2)
TextBox4.Text = mas(3)
TextBox5.Text = mas(4)
Dim mas_rez(4) As Integer
Dim ves_gad_sk As Integer
'Vesela gadījuma skaitļa no 1-5 ģenerēšana
ves_gad_sk = Int(Rnd() * 5 + 1)
'Izvēlētā masīva mas() elememta vērtības ierakstīšana rezultātu masīvā mas_rez()
mas_rez(1 - 1) = mas(ves_gad_sk - 1)
'Iegūtās pirmās rezultāta vērtības izvade
TextBox26.Text = mas_rez(1 - 1)
'Masīva mas() elementu vērtību pārbīde
If ves_gad_sk = 1 Then
mas(1 - 1) = mas(2 - 1)
End If
If ves_gad_sk ................
................
In order to avoid copyright disputes, this page is only a partial summary.
To fulfill the demand for quickly locating and searching documents.
It is intelligent file search solution for home and business.
Related download
- datu bāzes tehnoloģijas izglītība nedrīkst būt mērķis
- throttle redirector
- microsoft access guide
- opc data access automation specification
- episodul 5 creerea formurilor principale
- metadraw custom control documentation
- sql is a standard computer language for accessing and
- pengenalan visual basic
- commercial gui design development approach
- datu bāzes tehnoloģijas