📄 busselect.frm
字号:
' BusImage.Cls
' BusImage.DrawWidth = 3
'End Sub
Private Sub BusList1_Click()
For i = 0 To BusList1.ListCount - 1
'公交线路较果图
'=================================================================================================================
If BusList1.Selected(i) And i = 0 Then
If BusOption11.Value = True Then
n = i
BusSelectTimer1.Enabled = False
Call busline
End If
ElseIf BusList1.Selected(i) And i = 1 Then
If BusOption2.Value = True Then
n = i
BusSelectTimer1.Enabled = False
Call busline
ElseIf BusOption11.Value = True Then
n = i
BusSelectTimer1.Enabled = False
Call busline
End If
'=================================================================================================================
'站点较果图
'=================================================================================================================
ElseIf BusList1.Selected(i) And i > 1 Then
If BusOption1.Value = True Then
n = i
Call buslineshow
ElseIf BusOption2.Value = True Then
BusImage.Left = -BusHScroll.Max * (bussite(i - 1, 1) / BusImage.Width)
BusHScroll.Value = BusHScroll.Max * (bussite(i - 1, 1) / BusImage.Width)
BusImage.Top = -BusVScroll.Max * (bussite(i - 1, 2) / BusImage.Height)
BusVScroll.Value = BusVScroll.Max * (bussite(i - 1, 2) / BusImage.Height)
BusImage.Cls
n = i
siterad = 5
BusSelectTimer1.Enabled = True
ElseIf BusOption3.Value = True Then
If i <> BusList1.ListCount - 1 Then
n = i - 1
Call busline
End If
ElseIf BusOption10.Value = True Then
BusImage.Left = -BusHScroll.Max * (bussite(n - 1, 1) / BusImage.Width)
BusHScroll.Value = BusHScroll.Max * (bussite(n - 1, 1) / BusImage.Width)
BusImage.Top = -BusVScroll.Max * (bussite(n - 1, 2) / BusImage.Height)
BusVScroll.Value = BusVScroll.Max * (bussite(n - 1, 2) / BusImage.Height)
BusImage.Cls
n = i - 1
siterad = 5
BusSelectTimer1.Enabled = True
End If
End If
Next
End Sub
Private Sub BusOption1_Click() '站点信息查询
Label1.Visible = True
Label1.Caption = "请输入站点"
BusFrame2.Caption = BusOption1.Caption
BusLabel3.Visible = True
BusLabel3.Caption = "站 点:"
BusLabel4.Visible = False
BusTxt1.Visible = True
BusTxt2.Visible = False
BusCombo.Visible = False
Call busclear
End Sub
Private Sub BusOption10_Click()
Label1.Visible = False
BusFrame2.Caption = BusOption10.Caption
BusLabel3.Visible = True
BusLabel3.Caption = "站 点:"
BusLabel4.Visible = True
BusLabel4.Caption = "范 围:"
BusTxt1.Visible = True
BusTxt2.Visible = False
BusCombo.Visible = True
Call busclear
End Sub
Private Sub BusOption11_Click()
Label1.Visible = False
BusFrame2.Caption = BusOption11.Caption
BusLabel3.Visible = True
BusLabel3.Caption = "始 点:"
BusLabel4.Visible = True
BusLabel4.Caption = "终 点:"
BusTxt1.Visible = True
BusTxt2.Visible = True
BusCombo.Visible = False
Call busclear
End Sub
Private Sub BusOption2_Click() '公交线路查询
Label1.Visible = True
Label1.Caption = "请输入公交路线"
BusFrame2.Caption = BusOption2.Caption
BusLabel3.Caption = "公交线路:"
BusLabel4.Visible = False
BusTxt2.Visible = False
BusCombo.Visible = False
Call busclear
End Sub
Private Sub BusOption3_Click() '最优线路查询
BusSelectTimer1.Enabled = False
Label1.Visible = False
BusFrame2.Caption = BusOption3.Caption
BusLabel3.Visible = True
BusLabel3.Caption = "始 点:"
BusLabel4.Visible = True
BusLabel4.Caption = "终 点:"
BusTxt1.Visible = True
BusTxt2.Visible = True
BusCombo.Visible = False
Call busclear
End Sub
Private Sub BusOption4_Click()
Call busclear
End Sub
Private Sub BusOption5_Click()
Call busclear
End Sub
Private Sub BusSelectTimer1_Timer()
'站点较果图
'=================================================================================================================
If siterad > 80 Then
siterad = 5
End If
BusImage.Cls
If BusOption10.Value = True Then
BusImage.FillStyle = 1
BusImage.CurrentX = siteside(1, 0)
BusImage.CurrentY = siteside(1, 1)
BusImage.FontBold = True
BusImage.ForeColor = sitecolor
BusImage.FontSize = 10
BusImage.Print BusSelect.BusTxt1.Text
BusImage.Circle (siteside(1, 0), siteside(1, 1)), 80, linecolor
BusImage.Circle (siteside(1, 0), siteside(1, 1)), area
BusImage.CurrentX = bussite(n - 1, 1)
BusImage.CurrentY = bussite(n - 1, 2)
BusImage.FontBold = True
BusImage.ForeColor = sitecolor
BusImage.FontSize = 10
BusImage.Print bussite(n - 1, 0)
BusImage.Circle (bussite(n - 1, 1), bussite(n - 1, 2)), siterad, linecolor
Else
BusImage.CurrentX = bussite(n - 1, 1)
BusImage.CurrentY = bussite(n - 1, 2)
BusImage.FontBold = True
BusImage.ForeColor = sitecolor
BusImage.FontSize = 10
BusImage.Print bussite(n - 1, 0)
BusImage.Circle (bussite(n - 1, 1), bussite(n - 1, 2)), siterad, linecolor
End If
siterad = siterad + 5
End Sub
Private Sub BusTxt1_KeyPress(KeyAscii As Integer) '快捷键
If KeyAscii = 13 Then
Call BusCmd1_Click
End If
End Sub
Private Sub BusTxt2_KeyPress(KeyAscii As Integer) '快捷键
If KeyAscii = 13 Then
Call BusCmd1_Click
End If
End Sub
Private Sub Form_Load() '初始化加载
Label1.Caption = "请输入站点"
BusFrame2.Caption = BusOption1.Caption
BusOption4.Value = True
BusLabel3.Visible = True
BusLabel3.Caption = "始 点:"
BusLabel4.Visible = False
BusTxt1.Visible = True
BusTxt2.Visible = False
BusCombo.AddItem "100米"
BusCombo.AddItem "200米"
BusCombo.AddItem "500米"
BusCombo.AddItem "1000米"
BusCombo.Visible = False
Call Form_Resize
End Sub
Private Sub Form_Resize() '初始化窗口
'加载图片
'=================================================================================================================
BusSelect.Icon = LoadPicture(App.Path + "\picture\icon.ico")
'BusSelect.Picture = LoadPicture(App.Path + "\picture\adminback.jpg")
BusImage.Picture = LoadPicture(App.Path + "\picture\fuzhou.jpg")
'=================================================================================================================
'滚动条字符
'=================================================================================================================
BusLabel1.Left = 0
BusLabel1.Top = 60
BusSelectTimer.Interval = 100
BusSelectTimer.Enabled = True
BusSelectTimer2.Enabled = False
BusSelectTimer2.Interval = 500
'=================================================================================================================
'站点较果图
'=================================================================================================================
BusSelectTimer1.Interval = 50
BusSelectTimer1.Enabled = False
'=================================================================================================================
'If BusFrame3.Top <= Busmanage.Height And BusFrame3.Width <= Busmanage.Width Then
'智能查询框
'=================================================================================================================
BusFrame1.Left = 50
BusFrame1.Top = BusLabel1.Top + BusLabel1.Height + 100
BusFrame2.Left = 50
BusFrame2.Top = BusFrame1.Top + BusFrame1.Height + 50
BusLabel2.Left = BusFrame1.Left + BusFrame1.Width + 50
BusLabel2.Top = BusFrame1.Top
BusCmd1.Top = BusFrame2.Top + BusFrame2.Height + 100
BusCmd2.Top = BusCmd1.Top
BusFrame3.Left = 50
BusFrame3.Top = BusCmd1.Top + BusCmd1.Height + 50
BusOption4.Caption = "模糊查询"
BusOption5.Caption = "精确查询"
BusFrame3.Height = BusSelect.Height - (BusCmd1.Top + BusCmd1.Height) - 700
BusList1.Height = BusFrame3.Height - 350
'=================================================================================================================
'效果图
'=================================================================================================================
BusPicture.Left = BusLabel2.Left
BusPicture.Top = BusLabel2.Top + BusLabel2.Height + 50
BusPicture.Height = BusSelect.Height - (BusLabel2.Top + BusLabel2.Height) - 955
BusPicture.Width = BusSelect.Width - BusPicture.Left - 455
x1 = -1
y1 = -1
BusImage.DrawWidth = 3
BusImage.AutoRedraw = True
BusImage.Left = 0
BusImage.Top = 0
'=================================================================================================================
'垂直滚动条
'=================================================================================================================
BusVScroll.Left = BusPicture.Left + BusPicture.Width
BusVScroll.Top = BusPicture.Top
BusVScroll.Width = 255
BusVScroll.Height = BusPicture.Height + 255
BusVScroll.SmallChange = 100
BusVScroll.LargeChange = 500
BusVScroll.min = 0
'=================================================================================================================
'水平滚动条
'=================================================================================================================
BusHScroll.Height = 255
BusHScroll.Width = BusPicture.Width
BusHScroll.Left = BusPicture.Left
BusHScroll.Top = BusPicture.Top + BusPicture.Height
BusHScroll.SmallChange = 100
BusHScroll.LargeChange = 500
BusHScroll.min = 0
'=================================================================================================================
'End If
'设置水平滚动条的最大值
'=================================================================================================================
If BusImage.Width > BusPicture.Width Then
BusHScroll.Max = BusImage.Width - BusPicture.Width
End If
'设置垂直滚动条的最大值
'=================================================================================================================
If BusImage.Height > BusPicture.Height Then
BusVScroll.Max = BusImage.Height - BusPicture.Height
End If
End Sub
Private Sub BusHScroll_Change() '水平滚动条事件
BusImage.Left = -BusHScroll.Value
End Sub
Private Sub BusImage_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) '获得X,Y轴坐标值
If Button = 1 Then
x1 = X
y1 = Y
End If
End Sub
Private Sub BusVScroll_Change() '垂直滚动条事件
BusImage.Top = -BusVScroll.Value
End Sub
Private Sub BusSelectTimer_Timer() '控制滚动字符的位置
BusLabel1.Left = BusLabel1.Left - 100
If BusLabel1.Left < -BusLabel1.Width Then
BusLabel1.Left = BusSelect.Width
End If
End Sub
Private Sub busclear() '清空文本框
BusTxt1.Text = ""
BusTxt1.SetFocus
BusTxt2.Text = ""
BusCombo.Text = ""
BusList1.Clear
BusImage.Cls
BusSelectTimer1.Enabled = False
BusSelectTimer2.Enabled = False
End Sub
Private Sub BusSelectTimer2_Timer()
'If BusOption1.Value = True Then
BusImage.Left = -BusHScroll.Max * (bussites(n, 1) / BusImage.Width)
BusHScroll.Value = BusHScroll.Max * (bussites(n, 1) / BusImage.Width)
BusImage.Top = -BusVScroll.Max * (bussites(n, 2) / BusImage.Height)
BusVScroll.Value = BusVScroll.Max * (bussites(n, 2) / BusImage.Height)
If bussites(n, 0) <> "" Then
BusImage.Circle (bussites(n, 1), bussites(n, 2)), 50, linecolor
Else
BusImage.Circle (bussites(n, 1), bussites(n, 1)), 1, linecolor
End If
If n = 0 Then
x1 = bussites(n, 1)
y1 = bussites(n, 2)
BusImage.CurrentX = bussites(n, 1)
BusImage.CurrentY = bussites(n, 2)
BusImage.FontBold = True
BusImage.ForeColor = vbRed
BusImage.FontSize = 10
If bussites(n, 0) <> "" Then
BusImage.Print bussites(n, 0)
End If
Else
BusImage.Line (x1, y1)-(bussites(n, 1), bussites(n, 2)), linecolor
x1 = bussites(n, 1)
y1 = bussites(n, 2)
BusImage.CurrentX = bussites(n, 1)
BusImage.CurrentY = bussites(n, 2)
BusImage.FontBold = True
BusImage.ForeColor = vbRed
BusImage.FontSize = 10
If bussites(n, 0) <> "" Then
BusImage.Print bussites(n, 0)
End If
End If
If n = z Then
BusSelectTimer2.Enabled = False
Else
n = n + 1
End If
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -