findcustomize_complex.frm

来自「这是我的一个课题:我省农业分布调查咨询系统。课题是和省农业厅合作的。源代码完整」· FRM 代码 · 共 424 行 · 第 1/2 页

FRM
424
字号
'       selectyearCombo1.Enabled = False
'
'       Case "播种面积", "耕地面积", "县总人口", "非农业人口", "农村人口", "男性人口", "女性人口", "从业人员", "农民人均纯收入", "粮食总产", "国内生产总值", "第一产业产值", "第二产业产值", "第三产业产值", "种植业产值", "牧业产值", "林业产值", "乡镇企业产值"
'       Label4.Caption = "亩"
'End Select
'If FindFieldCombo.Text = "土地面积" Then
'   Label4.Caption = "平方公里"
'Else
'   If FindFieldCombo.Text = "播种面积" Or FindFieldCombo.Text = "耕地面积" Then
'      Label4.Caption = "亩"
'   Else
'      If FindFieldCombo.Text = "农民人均纯收入" Then
'         Label4.Caption = "元"
'      Else
'         If FindFieldCombo.Text = "粮食总产" Then
'            Label4.Caption = "吨"
'         Else
'            If FindFieldCombo.Text = "非农业人口" Then
'               Label4.Caption = "万人"
'            Else
'                If FindFieldCombo.Text = "县总人口" Or FindFieldCombo.Text = "农村人口" Or FindFieldCombo.Text = "男性人口" Or FindFieldCombo.Text = "女性人口" Or FindFieldCombo.Text = "从业人员" Then
'                  Label4.Caption = "人"
'                Else
'                    If FindFieldCombo.Text = "国内生产总值" Or FindFieldCombo.Text = "第一产业产值" Or FindFieldCombo.Text = "第二产业产值" Or FindFieldCombo.Text = "第三产业产值" Or FindFieldCombo.Text = "种植业产值" Or FindFieldCombo.Text = "牧业产值" Or FindFieldCombo.Text = "林业产值" Or FindFieldCombo.Text = "乡镇企业产值" Then
'                       Label4.Caption = "万元"
'                    Else
'                       Label4.Caption = ""
'                    End If
'                End If
'             End If
'          End If
'       End If
'    End If
'End If
End Sub


Private Sub FindValueText_LostFocus()
searchstring.Text = searchstring.Text & FindValueText.Text
End Sub


Private Sub Form_Load()
FindFieldCombo.Clear
FindValueText.Text = ""
'FindFieldCombo.AddItem "查询列表" '数字型
FindFieldCombo.AddItem "土地面积" '数字型
FindFieldCombo.AddItem "播种面积" '数字型
FindFieldCombo.AddItem "耕地面积" '数字型
FindFieldCombo.AddItem "县总人口" '数字型
FindFieldCombo.AddItem "非农业人口" '数字型
FindFieldCombo.AddItem "农村人口"   '数字型
FindFieldCombo.AddItem "男性人口" '数字型
FindFieldCombo.AddItem "女性人口" '数字型
FindFieldCombo.AddItem "从业人员" '数字型
FindFieldCombo.AddItem "农民人均纯收入" '数字型
FindFieldCombo.AddItem "粮食总产" '数字型
FindFieldCombo.AddItem "国内生产总值" '数字型
FindFieldCombo.AddItem "第一产业产值" '数字型
FindFieldCombo.AddItem "第二产业产值" '数字型
FindFieldCombo.AddItem "第三产业产值" '数字型
FindFieldCombo.AddItem "种植业产值" '数字型
FindFieldCombo.AddItem "牧业产值" '数字型
FindFieldCombo.AddItem "林业产值" '数字型
FindFieldCombo.AddItem "乡镇企业产值" '数字型
FindFieldCombo.ListIndex = -1 '空

selectyearCombo1.AddItem "1999"
selectyearCombo1.ListIndex = 0

calculateList.AddItem "="
calculateList.AddItem "<>"
calculateList.AddItem ">"
calculateList.AddItem ">="
calculateList.AddItem "<"
calculateList.AddItem "<="
calculateList.AddItem "And "
calculateList.AddItem "Or"

searchstring.Text = ""


If fMainForm.Map1.Geoset = App.Path & "\maps\四川省行政区划图.gst" Then
   FindCustomize_complex.Caption = "四川省行政区划图查询窗口"
Else
    If fMainForm.Map1.Layers.Item("a-地貌").Visible = True Then
       FindCustomize_complex.Caption = "四川省地貌区划图查询窗口"
    End If
    If fMainForm.Map1.Layers.Item("a-气候").Visible = True Then
       FindCustomize_complex.Caption = "四川省农业气候区划图查询窗口"
    End If
    If fMainForm.Map1.Layers.Item("a-水利").Visible = True Then
       FindCustomize_complex.Caption = "四川省水利区划图查询窗口"
    End If
    If fMainForm.Map1.Layers.Item("a-水文").Visible = True Then
       FindCustomize_complex.Caption = "四川省农业水文地质区划图查询窗口"
    End If
    If fMainForm.Map1.Layers.Item("a-企业").Visible = True Then
       FindCustomize_complex.Caption = "四川省乡镇企业区划图查询窗口"
    End If
    If fMainForm.Map1.Layers.Item("a-畜牧").Visible = True Then
       FindCustomize_complex.Caption = "四川省畜牧业区划图查询窗口"
    End If
    If fMainForm.Map1.Layers.Item("a-渔业").Visible = True Then
       FindCustomize_complex.Caption = "四川省渔业区划图查询窗口"
    End If
    If fMainForm.Map1.Layers.Item("a-种植业").Visible = True Then
       FindCustomize_complex.Caption = "四川省种植业区划图查询窗口"
    End If
    If fMainForm.Map1.Layers.Item("a-综农").Visible = True Then
       FindCustomize_complex.Caption = "四川省综合农业区划图查询窗口"
    End If
End If

End Sub

Private Sub Form_Unload(Cancel As Integer)
Dim i As Integer
For i = 1 To fMainForm.Map1.Datasets.Count
    If fMainForm.Map1.Datasets.Item(i).Name = "1g12_year" Then
        fMainForm.Map1.Datasets.Remove ("1g12_year")
        Exit For
    End If
Next
End Sub

Private Sub OKButton_Click()
    FindCustomize_complex.MousePointer = ccHourglass '设置鼠标为沙漏形
    Dim FoundFeatures As Features                    '查询结果集
    Dim mytext As String
    Dim i As Integer
    Dim db As Database
    Dim myrs As ADODB.Recordset
    
    ProBar1.Min = 0
    ProBar1.Value = 0
    ProBar1.Max = 100
    ProBar1.Visible = True
    '/*删除dataset(1g12_year)*/
    For i = 1 To fMainForm.Map1.Datasets.Count
        If fMainForm.Map1.Datasets.Item(i).Name = "1g12_year" Then
            fMainForm.Map1.Datasets.Remove ("1g12_year")
            Exit For
        End If
    Next
    '/* 以下是创建数据绑定databinding */
    Set db = OpenDatabase(App.Path & "\scdb_yearsdata.mdb")
    On Error Resume Next
    Connect.Execute ("Drop Table yearsdata_year")
    Connect.Execute ("select *  into yearsdata_year from yearsdata where 年份='" & selectyearCombo1.Text & "'")
    Set myrs = New ADODB.Recordset
    myrs.CursorType = adOpenKeyset
    myrs.LockType = adLockOptimistic
    myrs.Open "yearsdata_year", Connect, , , adCmdTable
    ProBar1.Value = ProBar1.Value + 30
    fMainForm.Map1.Datasets.Add miDataSetADO, myrs, "1g12_year", "行政代码", , "1g12"
    ProBar1.Value = ProBar1.Value + 20
     On Error GoTo NumError
     Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search(searchstring.Text)
     ProBar1.Value = ProBar1.Value + 20
      If FoundFeatures.Count = 0 Then
            ProBar1.Value = 100
            MsgBox "没有在地图上找到您要的目标", , "提示信息"
      Else
             '以下是将selection显示在地图中间,并且将整个selection显示出来。利用selection是一类features集合,有一个属性是bounds。bounds 是一个矩形,具有Xmin,Xmax,Ymin,Ymax
            Set fMainForm.Map1.Bounds = FoundFeatures.Bounds
            ProBar1.Value = 100
        '    ProBar1.Value = 100 - (100 - ProBar1.Value) / FoundFeatures.Count
            fMainForm.Map1.Layers("1g12").Selection.Replace FoundFeatures '选取的结果返回到选区
            If FoundFeatures.Count > 1 Then
                mytext = selectyearCombo1.Text & "年" & searchstring.Text & " 的区县"
                frmselectmore.Label1.Caption = mytext & "共有" & FoundFeatures.Count & "个"
            End If
       End If
       FindCustomize_complex.MousePointer = ccDefault
       ProBar1.Visible = False
       Exit Sub
NumError:
      MsgBox "查询条件有错,请检查并修改!", , "提示信息"
      FindValueText.Text = ""
      ProBar1.Visible = False
      FindCustomize_complex.MousePointer = ccDefault
      Exit Sub
End Sub


Private Sub searchstring_Change()
If searchstring.Text = "" Then
   OKButton.Enabled = False
Else
   OKButton.Enabled = True
End If

End Sub

Private Sub selectyearCombo1_Change()
'If fMainForm.Map1.Datasets.Count > 1 Then
'   fMainForm.Map1.Datasets.Remove ("1g12_year")
'End If
'Dim db As Database
'Dim myRS As ADODB.Recordset
'Set db = OpenDatabase("d:\agricultural_query\scdb_yearsdata.mdb")
'connect.Execute ("Drop Table yearsdata_year")
'connect.Execute ("select *  into yearsdata_year from yearsdata where 年份='" & selectyearCombo1.Text & "'")
'Set myRS = New ADODB.Recordset
'myRS.CursorType = adOpenKeyset
'myRS.LockType = adLockOptimistic
'myRS.Open "yearsdata_year", connect, , , adCmdTable
'fMainForm.Map1.Datasets.Add miDataSetADO, myRS, "1g12_year", "行政代码", , "1g12"

End Sub

⌨️ 快捷键说明

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