3333333333333

Imports System.Data.OleDb

Public Class Form1


    Private rtb As RichTextBox = New RichTextBox()
    Private ms As MenuStrip = New MenuStrip()
    Private tsb As ToolStripButton = New ToolStripButton("开始(Alt+&S)", Nothing, AddressOf tsb_Click)
    Private tlp As TableLayoutPanel = New TableLayoutPanel()
    Private mulu As String() = {"圣经目录", "旧约", "新约", "律法书", "历史书", "诗歌·智慧书", "先知书", "四福音", "教会历史", "书信", "对约翰的启示"}
    Private lbl_mulu As Label() = New Label(11) {}
    Private juan As String() = {"创世记", "出埃及记", "利未记", "民数记", "申命记", "约书亚记", "士师记", "路得记", "撒母耳记上", "撒母耳记下", "列王纪上", "列王纪下", "历代志上", "历代志下", "以斯拉记", "尼希米记", "以斯帖记", "约伯记", "诗篇", "箴言", "传道书", "雅歌", "以赛亚书", "耶利米书", "耶利米哀歌", "以西结书", "但以理书", "何西阿书", "约珥书", "阿摩司书", "俄巴底亚书", "约拿书", "弥迦书", "那鸿书", "哈巴谷书", "西番雅书", "哈该书", "撒迦利亚书", "玛拉基书", "马太福音", "马可福音", "路加福音", "约翰福音", "使徒行传", "罗马书", "哥林多前书", "哥林多后书", "加拉太书", "以弗所书", "腓立比书", "歌罗西书", "帖撒罗尼迦前书", "帖撒罗尼迦后书", "提摩太前书", "提摩太后书", "提多书", "腓利门书", "希伯来书", "雅各书", "彼得前书", "彼得后书", "约翰壹书", "约翰贰书", "约翰叁书", "犹大书", "启示录"}
    Private lkl_juan As LinkLabel() = New LinkLabel(66) {}

    Public Sub New()

        ' 此调用是设计器所必需的。
        InitializeComponent()

        ' 在 InitializeComponent() 调用之后添加任何初始化。
        Me.Size = New Size(1024, 768)
        Me.WindowState = FormWindowState.Maximized

        Me.rtb.Dock = DockStyle.Fill
        Me.rtb.Font = New Font("黑体", 70, FontStyle.Bold)
        Me.rtb.BackColor = Color.Black
        Me.rtb.ReadOnly = True
        Me.Controls.Add(Me.rtb)

        Me.tsb.Font = New Font("黑体", 20, FontStyle.Bold)
        Me.ms.Items.Add(Me.tsb)
        Me.Controls.Add(Me.ms)

        Me.tlp.Dock = DockStyle.Fill
        Me.tlp.ColumnCount = 5
        Me.tlp.RowCount = 28

        For i As Integer = 0 To 4
            If i = 2 Then
                Me.tlp.ColumnStyles.Add(New ColumnStyle(SizeType.Percent, 1.0!))
                Continue For
            End If
            Me.tlp.ColumnStyles.Add(New ColumnStyle(SizeType.Percent, 24.75!))
        Next

        For i As Integer = 0 To 27
            Me.tlp.RowStyles.Add(New RowStyle(SizeType.Percent, 3.57!))
        Next
    End Sub

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

        For i As Integer = 0 To mulu.Length - 1
            lbl_mulu(i) = New Label()
            lbl_mulu(i).Anchor = AnchorStyles.None
            lbl_mulu(i).AutoSize = True
            If i > 2 Then
                lbl_mulu(i).BorderStyle = BorderStyle.FixedSingle
            End If
            lbl_mulu(i).Dock = DockStyle.Fill
            lbl_mulu(i).Font = New Font("黑体", 30, FontStyle.Bold)
            lbl_mulu(i).Text = mulu(i)
            lbl_mulu(i).TextAlign = ContentAlignment.MiddleCenter
            Me.tlp.SetRowSpan(Me.lbl_mulu(i), 2)
            If i = 0 Then
                lbl_mulu(i).ForeColor = Color.Sienna
                Me.tlp.SetColumnSpan(Me.lbl_mulu(i), 5)
                Me.tlp.Controls.Add(Me.lbl_mulu(i), 0, 0)
            ElseIf i = 1 Then
                lbl_mulu(i).ForeColor = Color.Black
                Me.tlp.SetColumnSpan(Me.lbl_mulu(i), 2)
                Me.tlp.Controls.Add(Me.lbl_mulu(i), 0, 2)
            ElseIf i = 2 Then
                lbl_mulu(i).ForeColor = Color.Red
                Me.tlp.SetColumnSpan(Me.lbl_mulu(i), 2)
                Me.tlp.Controls.Add(Me.lbl_mulu(i), 3, 2)
            ElseIf i = 3 Then
                lbl_mulu(i).ForeColor = Color.Black
                Me.tlp.Controls.Add(Me.lbl_mulu(i), 0, 4)
            ElseIf i = 4 Then
                lbl_mulu(i).ForeColor = Color.Black
                Me.tlp.Controls.Add(Me.lbl_mulu(i), 0, 11)
            ElseIf i = 5 Then
                lbl_mulu(i).ForeColor = Color.Black
                Me.tlp.Controls.Add(Me.lbl_mulu(i), 0, 25)
            ElseIf i = 6 Then
                lbl_mulu(i).ForeColor = Color.Black
                Me.tlp.Controls.Add(Me.lbl_mulu(i), 1, 8)
            ElseIf i = 7 Then
                lbl_mulu(i).ForeColor = Color.Red
                Me.tlp.Controls.Add(Me.lbl_mulu(i), 3, 4)
            ElseIf i = 8 Then
                lbl_mulu(i).ForeColor = Color.Red
                Me.tlp.Controls.Add(Me.lbl_mulu(i), 3, 10)
            ElseIf i = 9 Then
                lbl_mulu(i).ForeColor = Color.Red
                Me.tlp.Controls.Add(Me.lbl_mulu(i), 3, 13)
            ElseIf i = 10 Then
                lbl_mulu(i).ForeColor = Color.Red
                Me.tlp.Controls.Add(Me.lbl_mulu(i), 4, 18)
            End If
        Next i

        For i As Integer = 0 To juan.Length - 1
            Me.lkl_juan(i) = New LinkLabel()
            Me.lkl_juan(i).Anchor = AnchorStyles.None
            Me.lkl_juan(i).AutoSize = True
            Me.lkl_juan(i).Font = New System.Drawing.Font("黑体", 15.0!, FontStyle.Bold)
            Me.lkl_juan(i).Text = juan(i)
            Me.lkl_juan(i).TextAlign = ContentAlignment.MiddleCenter
            If i < 5 Then
                Me.lkl_juan(i).LinkColor = Color.DimGray
                Me.tlp.Controls.Add(Me.lkl_juan(i), 0, i + 6)
            ElseIf i < 17 Then
                Me.lkl_juan(i).LinkColor = Color.DimGray
                Me.tlp.Controls.Add(Me.lkl_juan(i), 0, i + 8)
            ElseIf i < 18 Then
                Me.lkl_juan(i).LinkColor = Color.DimGray
                Me.tlp.Controls.Add(Me.lkl_juan(i), 0, i + 10)
            ElseIf i < 22 Then
                Me.lkl_juan(i).LinkColor = Color.DimGray
                Me.tlp.Controls.Add(Me.lkl_juan(i), 1, i - 14)
            ElseIf i < 39 Then
                Me.lkl_juan(i).LinkColor = Color.DimGray
                Me.tlp.Controls.Add(Me.lkl_juan(i), 1, i - 12)
            ElseIf i < 43 Then
                Me.lkl_juan(i).LinkColor = Color.DarkOrange
                Me.tlp.Controls.Add(Me.lkl_juan(i), 3, i - 33)
            ElseIf i < 44 Then
                Me.lkl_juan(i).LinkColor = Color.DarkOrange
                Me.tlp.Controls.Add(Me.lkl_juan(i), 3, i - 31)
            ElseIf i < 51 Then
                Me.lkl_juan(i).LinkColor = Color.DarkOrange
                Me.tlp.Controls.Add(Me.lkl_juan(i), 3, i - 29)
            ElseIf i < 65 Then
                Me.lkl_juan(i).LinkColor = Color.DarkOrange
                Me.tlp.Controls.Add(Me.lkl_juan(i), 4, i - 47)
            ElseIf i < 66 Then
                Me.lkl_juan(i).LinkColor = Color.DarkOrange
                Me.tlp.Controls.Add(Me.lkl_juan(i), 4, i - 45)
            End If
            AddHandler lkl_juan(i).Click, AddressOf lkl_juan_Click '声明一个事件委托
        Next i

        Dim lbl As Label = New Label()
        lbl.BorderStyle = BorderStyle.FixedSingle
        lbl.Dock = DockStyle.Fill
        Me.tlp.SetRowSpan(lbl, 26)
        Me.tlp.Controls.Add(lbl, 2, 2)
        Me.Controls.Add(Me.tlp)
        Me.tlp.BringToFront()

    End Sub

    Private Sub tsb_Click()
        If Me.tlp.Visible Then
            Me.tlp.Visible = False
            Return
        End If
        Me.tlp.Visible = True
    End Sub

    Private Sub lkl_juan_Click(sender As Object, e As EventArgs)
        Dim s As String = CType(sender, LinkLabel).Text
        Me.selecthb(s)
        Me.tlp.Visible = False
    End Sub

    Private Sub selecthb(ShortName As String)
        Dim ChapterSN As Integer = 0
        Dim VerseSN As Integer = 0

        While ChapterSN = 0                                                                          '条件无限循环
            Dim s As String = InputBox("输入章数", ShortName, "1")                             '定义输入框
            If s = Nothing Or s.Equals("") Or s.Length > 3 Then                                 '判断如果输入的不是空或者不是空字符串或者长度大于三才可以跳出循环
                Continue While
            End If
            ChapterSN = Val(s)                                                                       '章数转换为整数
        End While

        While VerseSN = 0
            Dim s As String = InputBox("输入节数", ShortName & "第" & ChapterSN & "章", "1")
            If s = Nothing Or s.Equals("") Or s.Length > 3 Then
                Continue While
            End If
            VerseSN = Val(s)
        End While

        Me.rtb.Hide()
        Me.rtb.Clear()
        Me.rtb.SelectionColor = Color.OrangeRed
        Me.rtb.AppendText("《" & ShortName & "》" & "第" & ChapterSN & "章" & vbVerticalTab)

        Using con As OleDbConnection = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=bibleNosound.dat;Persist Security Info=True;Jet OLEDB:Database Password=pasitoldata")
            Using cmd As OleDbCommand = New OleDbCommand("select * from bible, bibleid where bible.VolumeSN = bibleid.SN and FullName = @ShortName and ChapterSN = @ChapterSN and VerseSN >= @VerseSN", con)
                cmd.Parameters.AddWithValue("ShortName", ShortName) : cmd.Parameters.AddWithValue("ChapterSN", ChapterSN) : cmd.Parameters.AddWithValue("VerseSN", VerseSN) : con.Open()
                Using sdr As OleDbDataReader = cmd.ExecuteReader()
                    Dim i As Integer = 0
                    While sdr.Read()
                        Me.rtb.SelectionColor = Color.White : Me.rtb.AppendText("(" & sdr("VerseSN") & ")" & vbTab)
                        If i Mod 3 = 0 Then '隔行变色
                            Me.rtb.SelectionColor = Color.Cyan
                        ElseIf i Mod 3 = 1 Then
                            Me.rtb.SelectionColor = Color.Magenta
                        Else
                            Me.rtb.SelectionColor = Color.Yellow
                        End If
                        Me.rtb.AppendText(sdr("strjw") & vbVerticalTab)                                             '每次循环追加新内容
                        i += 1
                    End While
                End Using
            End Using
        End Using

        Me.rtb.Select(0, 0)
        Me.rtb.Focus()
        Me.rtb.Show()
        Me.rtb.Focus()
        Me.rtb.Select(0, 0)
    End Sub
End Class

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值