Yazı Font Küçült Yazı Font Büyült

Geri Sayım-Timer Uygulaması

Bu makalemizde Rapidshare deki gibi geri sayım uygulaması yapacağız. Combobox nesnesinden seçilen dakika ve saniyeden geriye doğru saydıracağız. Ayrıca timer ın interval değerini, formun rengini vb... işlemleri çalışma anında yapabileceğiz. Aşağıdaki şekilleri inceleyin. Formunuza 1 adet Timer, 3 adet Label ve 4 adet Combobox nesnesi ekleyin.

Resim1

Şekil 1

Resim2

Şekil 2

Public Class Form1
    Dim i As Integer = 5
    Dim j As Integer = 59
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Timer1.Enabled = False
        Timer1.Interval = 1000
        Label1.Text = "0" & i
        Label2.Text = "00"
        Label3.Text = ":"
        cmb1.Text = "59"
        cmb2.Text = "0"
        cmb3.Text = "Timer Hızını Ayarla"
        cmb1.Enabled = False
        cmb2.Enabled = False
        cmb3.Enabled = False
        cmb4.Text = "Renk Ayarla"
        With Me
            .Text = "Geri Sayım"
            .Location = New Point(250, 150)
            .MaximizeBox = False
            .MinimizeBox = False
        End With
    End Sub

    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
      
        If j = 59 Then
            i = i - 1
            If i < 9 Then
                Label1.Text = "0" & i
            Else
                Label1.Text = i
            End If

        ElseIf j = -1 Then
            If i > 9 Then
                i = i - 1
                Label1.Text = i
                j = 59
            ElseIf i > 0 And i <= 9 Then
                i = i - 1
                Label1.Text = "0" & i
                j = 59
            ElseIf i <= 0 Then
                j = 0
                i = 0
                Label3.Text = ":"
                Timer1.Enabled = False
            End If
        End If
        If Label3.Text = ":" Then

            Label3.Text = ""
        Else
            Label3.Text = ":"
        End If

        If j > 9 Then
            Label2.Text = j
        Else
            Label2.Text = "0" & j
        End If

        If i = 0 And j = 0 Then
            Label3.Text = ":"
            btnBaslat.Text = "Baslat"
            Timer1.Enabled = False
            MsgBox("Süre Bitti", MsgBoxStyle.OkOnly, "Bahadirsa Mesaj")
            Exit Sub
        End If
        j = j - 1
      
    End Sub

    Private Sub btnBaslat_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBaslat.Click
        If Timer1.Enabled = False Then
            Timer1.Enabled = True
            btnBaslat.Text = "Durdur"
        Else
            Timer1.Enabled = False
            btnBaslat.Text = "Başlat"
        End If

    End Sub

    Private Sub cbox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbox1.CheckedChanged
        Label3.Text = ":"
        If cbox1.Checked Then
            cmb1.Enabled = True
            cmb2.Enabled = True
            cmb3.Enabled = True

            i = cmb1.Text
            j = cmb2.Text

            Label1.Text = i
          
            If i <= 9 Then
                Label1.Text = "0" & i
            End If

            If j > 9 Then
                Label2.Text = j
            Else
                Label2.Text = "0" & j
            End If
        Else
            i = 5
            j = 0
            Label1.Text = "0" & i
            Label2.Text = "0" & j
            Label3.Text = ":"
            Timer1.Enabled = False
            cmb1.Enabled = False
            cmb2.Enabled = False
            cmb3.Enabled = False
            btnBaslat.Text = "Başlat"
        End If
    End Sub

    Private Sub cmb3_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmb3.SelectedIndexChanged
        Timer1.Interval = cmb3.Text
    End Sub

    Private Sub cmb1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmb1.SelectedIndexChanged
        cbox1_CheckedChanged(sender, e)
    End Sub

    Private Sub cmb2_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmb2.SelectedIndexChanged
        cbox1_CheckedChanged(sender, e)
    End Sub

    Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmb4.SelectedIndexChanged
        If ColorDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
            If cmb4.SelectedIndex = 0 Then
                Label1.ForeColor = ColorDialog1.Color
                Label2.ForeColor = ColorDialog1.Color
                Label3.ForeColor = ColorDialog1.Color
            ElseIf cmb4.SelectedIndex = 1 Then
                Label1.BackColor = ColorDialog1.Color
                Label2.BackColor = ColorDialog1.Color
                Label3.BackColor = ColorDialog1.Color
            ElseIf cmb4.SelectedIndex = 2 Then
                Me.BackColor = ColorDialog1.Color
            End If
        End If

    End Sub
End Class

Bir sonraki makalede buluşmak üzere...Bahadır