⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 form1.vb

📁 最新的SSD4的练习8源码
💻 VB
📖 第 1 页 / 共 2 页
字号:
Public Class dt

    '声名一个全局数组存储hasSavingsTime的属性
    Public Shared hasSavingsTime(49) As Boolean
    Public Shared dMyDate As DateTime = DateTime.Now ' 获取当前时间
    Public Shared tnsecvalue As Int16                '变量用于判断上午和下午
    Public Shared monthvalue As Integer              '用来显示月份的index
    Public Shared buttontype As String               '存储用户单击button的类型
    Public Shared year As Int16                      '存储修改的年份
    Dim flag As Integer



    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.Timer1.Enabled = True
        Me.Timer1.Interval = 1000
        Dim i As Int16
        For i = 0 To 49
            hasSavingsTime(i) = True
        Next i
        hasSavingsTime(0) = False ' (GMT -12:00) Eniwetok, Kwajalein 
        hasSavingsTime(1) = False ' (GMT -11:00) Midway Island, Samoa 
        hasSavingsTime(2) = False ' (GMT -10:00) Hawaii 
        hasSavingsTime(5) = False ' (GMT -07:00) Arizona 
        hasSavingsTime(8) = False ' (GMT -06:00) Mexico City, Tegucigalpa 
        hasSavingsTime(9) = False ' (GMT -06:00) Saskatchewan 
        hasSavingsTime(10) = False ' (GMT -05:00) Bogota, Lima 
        hasSavingsTime(12) = False ' (GMT -05:00) Indiana (East) 
        hasSavingsTime(14) = False ' (GMT -04:00) Caracas, La Paz 
        hasSavingsTime(17) = False ' (GMT -03:00) Buenos Aires, Georgetown 
        hasSavingsTime(21) = False ' (GMT +00:00) Monrovia, Casablanca 
        hasSavingsTime(28) = False ' (GMT +02:00) Harare, Pretoria 
        hasSavingsTime(30) = False ' (GMT +03:00) Baghdad, Kuwait, Nairobi, Riyadh 
        hasSavingsTime(33) = False ' (GMT +04:00) Abu Dhabi, Muscat, Tbilisi 
        hasSavingsTime(34) = False ' (GMT +04:30) Kabul 
        hasSavingsTime(35) = False ' (GMT +05:00) Islamabad, Karachi, Ekaterinburg, Tashkent 
        hasSavingsTime(36) = False ' (GMT +05:30) Bombay, Calcutta, Madras, New Delhi, Colombo 
        hasSavingsTime(37) = False ' (GMT +06:00) Almaty, Dhaka 
        hasSavingsTime(38) = False ' (GMT +07:00) Bangkok, Jakarta, Hanoi 
        hasSavingsTime(40) = False ' (GMT +08:00) Hong Kong, Perth, Singapore, Taipei 
        hasSavingsTime(41) = False ' (GMT +09:00) Tokyo, Osaka, Sapporo, Seoul, Yakutsk 
        hasSavingsTime(43) = False ' (GMT +09:30) Darwin 
        hasSavingsTime(45) = False ' (GMT +10:00) Guam, Port Moresby, Vladivostok 
        hasSavingsTime(47) = False ' (GMT +11:00) Magadan, Solomon Is., New Caledonia 
        hasSavingsTime(48) = False ' (GMT +12:00) Fiji, Kamchatka, Marshall Is. 

        '对个控件进行初值的初始化
        AxCalendar2.Year = dMyDate.Year
        AxCalendar2.Month = dMyDate.Month
        AxCalendar2.Day = dMyDate.Day
        tnSec.Text = dMyDate.Second.ToString()
        tbMin.Text = dMyDate.Minute.ToString()
        Dim tnsecvalue As Int16
        tnsecvalue = dMyDate.Hour
        If tnsecvalue > 12 Then
            tnsecvalue = tnsecvalue - 12
            tbHour.Text = tnsecvalue.ToString()
            RadioButton2.Select()
        Else
            tbHour.Text = tnsecvalue.ToString()
            RadioButton1.Select()
        End If

        nnupHour.Value = Convert.ToInt16(tnsecvalue)
        nnupMin.Value = Convert.ToInt16(dMyDate.Minute)
        nnupSec.Value = Convert.ToInt16(dMyDate.Second)

        tbYear.Text = AxCalendar2.Year.ToString()
        monthvalue = Convert.ToInt32(AxCalendar2.Month) - 1
        cbMonth.SelectedIndex = monthvalue
        nupYear.Value = Convert.ToInt16(AxCalendar2.Year)


        Label4.Text = "Current Time Zone:" + ComboBox1.Text


    End Sub

    Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
        '按照hasSavingsTime的属性决定是否Enable CheckBox1
        If hasSavingsTime(ComboBox1.SelectedIndex) = False Then
            CheckBox1.Enabled = False
        Else
            CheckBox1.Enabled = True
        End If
        Label4.Text = "Current Time Zone:" + ComboBox1.Text


        flag = ComboBox1.SelectedIndex
        PictureBox1.Refresh()
    End Sub

    Private Sub btOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btOK.Click
        '设置button类型为OK并显示对话框
        buttontype = "OK.."
        showmsg()
        Application.Exit()
    End Sub

    Private Sub btCabcel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
        '设置button类型为并显示对话框
        buttontype = "Canceled.."
        showmsg()
        Application.Exit()
    End Sub

    Private Sub btApply_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btApply.Click
        '设置button类型为并显示对话框
        buttontype = "Applied.."
        showmsg()
    End Sub
    Private Sub showmsg()
        '实现对话框的显示
        Dim x As Int16
        x = ComboBox1.SelectedIndex
        ComboBox2.SelectedIndex = x
        Dim str As String
        str = ComboBox2.Text
        Dim showstr As String
        showstr = buttontype + "..." & vbCrLf & "=====================================" & vbCrLf & "Year= " + tbYear.Text
        showstr += "" & vbCrLf & "Month= " + (cbMonth.SelectedIndex + 1).ToString()
        showstr += "" & vbCrLf & "Day= " + AxCalendar2.Day.ToString()
        showstr += "" & vbCrLf & "Hour= " + tbHour.Text
        showstr += "" & vbCrLf & "Minute= " + tbMin.Text
        showstr += "" & vbCrLf & "Second= " + tnSec.Text
        showstr += "" & vbCrLf & "Timezone=" + ComboBox1.Text + "" & vbCrLf & "Offset from GMT=" + str
        showstr += "" & vbCrLf & "Auto daylight = " + hasSavingsTime(ComboBox1.SelectedIndex).ToString()
        showstr += "" & vbCrLf & "====================================="
        showstr += "" & vbCrLf & "Time not saved.."
        MessageBox.Show(showstr, "Exercise6", MessageBoxButtons.OK)

    End Sub
   
    Private Sub cbMonth_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbMonth.SelectedIndexChanged
        '实现日历中月份与ComboBox中显示月份的同步
        Dim month As Int16
        month = cbMonth.SelectedIndex + 1
        AxCalendar2.Month = month
    End Sub

    Private Sub nnupHour_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles nnupHour.ValueChanged
        '实现小时的同步
        tbHour.Text = nnupHour.Value.ToString()

    End Sub

    Private Sub nupYear_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles nupYear.ValueChanged
        '实现日历中年份与nupYear中显示年份的同步
        tbYear.Text = nupYear.Value.ToString()
        year = Convert.ToInt16(tbYear.Text)
        If Not nupYear.Value = 1800 Then
            AxCalendar2.Year = year
        End If

    End Sub

    Private Sub nnupMin_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles nnupMin.ValueChanged
        '实现分钟的同步
        tbMin.Text = nnupMin.Value.ToString()

    End Sub

    Private Sub nnupSec_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles nnupSec.ValueChanged
        '实现秒钟的同步
        tnSec.Text = nnupSec.Value.ToString()

    End Sub
   
    Private Sub PictureBox1_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
        Dim units As GraphicsUnit = GraphicsUnit.Pixel
        Select Case flag
            Case 0
                Dim srcRect As New Rectangle(0, 0, 540, 184)
                e.Graphics.DrawImage(My.Resources.timezone_map, 0, 0, srcRect, units)
            Case 1, 2, 3, 4, 5
                Dim srcRect As New Rectangle(15 * flag, 0, 540 - 15 * flag, 184)
                Dim rec As New Rectangle(540, 0, 15 * flag, 180)
                e.Graphics.DrawImage(My.Resources.timezone_map, 0, 0, srcRect, units)
                e.Graphics.DrawImage(My.Resources.timezone_map, 540 - 15 * flag, 0, rec, units)
            Case 6, 37
                Dim srcRect As New Rectangle(15 * 5, 0, 540 - 15 * 5, 184)
                Dim rec As New Rectangle(540, 0, 15 * 5, 184)
                e.Graphics.DrawImage(My.Resources.timezone_map, 0, 0, srcRect, units)
                e.Graphics.DrawImage(My.Resources.timezone_map, 540 - 15 * 5, 0, rec, units)
            Case 7, 8, 9, 38
                Dim srcRect As New Rectangle(15 * 6, 0, 540 - 15 * 6, 184)
                Dim rec As New Rectangle(540, 0, 15 * 6, 184)
                e.Graphics.DrawImage(My.Resources.timezone_map, 0, 0, srcRect, units)
                e.Graphics.DrawImage(My.Resources.timezone_map, 540 - 15 * 6, 0, rec, units)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -