[VB.NET] Dagen bij een datum optellen*

Pagina: 1
Acties:
  • 208 views sinds 30-01-2008
  • Reageer

  • mpie
  • Registratie: Maart 2001
  • Laatst online: 25-01-2016
Hoi hoi,
ik heb een vraagje. Ik heb een datum progje gemaakt dat op juistheid van invoer van datums controleert. hier mijn code
Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Private Sub btnCheck_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCheck.Click
        Dim Dag, Jaar, Maand As Integer

        Dag = CInt(txtDag.Text)
        Maand = CInt(txtMaand.Text)
        Jaar = CInt(txtJaar.Text)

        If Maand <= 12 And Maand >= 1 Then
            If Jaar >= 1900 And Jaar <= 2100 Then
                Select Case Maand
                    Case 1, 3, 5, 7, 8, 10, 12
                        If Dag <= 31 And Dag >= 1 Then
                            MessageBox.Show("De ingevoerde datum is een correcte datum", "Datumcontrole", MessageBoxButtons.OK)
                        Else
                            MessageBox.Show("De ingevoerde datum is een incorrecte datum", "Datumcontrole", MessageBoxButtons.OK)
                        End If

                    Case 2
                        If Dag <= 28 Then
                            MessageBox.Show("De ingevoerde datum is een correcte datum", "Datumcontrole", MessageBoxButtons.OK)
                        Else
                            MessageBox.Show("De ingevoerde datum is een incorrecte datum", "Datumcontrole", MessageBoxButtons.OK)
                        End If

                    Case 4, 6, 9, 11
                        If Dag <= 30 Then
                            MessageBox.Show("De ingevoerde datum is een correcte datum", "Datumcontrole", MessageBoxButtons.OK)
                        Else
                            MessageBox.Show("De ingevoerde datum is een incorrecte datum", "Datumcontrole", MessageBoxButtons.OK)
                        End If

                End Select
            Else 'jaar buiten bereik
                MessageBox.Show("De ingevoerde datum is een incorrecte datum", "Datumcontrole", MessageBoxButtons.OK)
            End If
        Else 'maand buiten bereik
            MessageBox.Show("De ingevoerde datum is een incorrecte datum", "Datumcontrole", MessageBoxButtons.OK)
        End If
    End Sub

    Private Sub Datumcontrole_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        ttDag.SetToolTip(txtDag, "Vul een dag in:")
        ttMaand.SetToolTip(txtMaand, "Vul een maand in:")
        ttJaar.SetToolTip(txtJaar, "Vul een jaar in:")
    End Sub

    Private Sub txtDag_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtDag.KeyPress
        'op dit moment gebruikersinvoer controleren op niet-numeriek
        If Not IsNumeric(e.KeyChar) And Not e.KeyChar = vbBack Then
            e.Handled = True
            Beep()
        End If
    End Sub


Nu heb ik een checkbox gemaakt. Als je dit aanvinkt moet de datum met 1 verhoogd worden. Maar wel rekening houdend met jaar telling en maandtelling. Iemand een idee hoe dit moet?
ik heb iets van
Visual Basic:
1
2
3
If chkOmhoog.Checked = True Then
txtDag += 1
        End If

Maar werkt niet echt

[ Voor 12% gewijzigd door mpie op 14-03-2003 11:09 ]

Wat je wil is niet altijd wat je nodig hebt!


  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Waarom maak je niet gewoon gebruik van het DateTime en TimeSpan object? Dan is dit allemaal totaal geen probleem en kan je die hele lap code ook weg laten

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:02
Kijk eens in de help naar de DateTime classes, welke functies een DateTime object heeft, etc....
Je zult dan wel op de functie AddDays() oid stuiten...

Verzin in het vervolg ook een passende titel.

[ Voor 14% gewijzigd door whoami op 14-03-2003 10:48 ]

https://fgheysels.github.io/


  • mpie
  • Registratie: Maart 2001
  • Laatst online: 25-01-2016
Omdat ik een beginnende .NET user bent en meer van .NET wilt leren. Daarom probeer ik met deze code een progje te maken en steeds verder uit te breiden zodat ik er meer van leert hoe je zoiets moet toepassen. Dus gaarne hulp hiermee

Wat je wil is niet altijd wat je nodig hebt!


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:02
mpie schreef op 14 March 2003 @ 11:11:
Omdat ik een beginnende .NET user bent en meer van .NET wilt leren. Daarom probeer ik met deze code een progje te maken en steeds verder uit te breiden zodat ik er meer van leert hoe je zoiets moet toepassen. Dus gaarne hulp hiermee


Zoals dus al gezegd:
Kijk eens naar de DateTime class, kijk naar de members AddDays ed....

https://fgheysels.github.io/