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

📄 findcustomize.frm

📁 这是我的一个课题:我省农业分布调查咨询系统。课题是和省农业厅合作的。源代码完整
💻 FRM
📖 第 1 页 / 共 3 页
字号:
FindFieldCombo.AddItem "国内生产总值" '数字型
FindFieldCombo.AddItem "第一产业产值" '数字型
FindFieldCombo.AddItem "第二产业产值" '数字型
FindFieldCombo.AddItem "第三产业产值" '数字型
FindFieldCombo.AddItem "种植业产值" '数字型
FindFieldCombo.AddItem "牧业产值" '数字型
FindFieldCombo.AddItem "林业产值" '数字型
FindFieldCombo.AddItem "乡镇企业产值" '数字型
FindFieldCombo.ListIndex = 0 '县名

selectyearCombo1.AddItem "1999"
selectyearCombo1.ListIndex = 0

If fMainForm.Map1.Geoset = App.Path & "\maps\四川省行政区划图.gst" Then
   FindCustomize.Caption = "四川省行政区划图查询窗口"
Else
    If fMainForm.Map1.Layers.Item("a-地貌").Visible = True Then
       FindCustomize.Caption = "四川省地貌区划图查询窗口"
    End If
    If fMainForm.Map1.Layers.Item("a-气候").Visible = True Then
       FindCustomize.Caption = "四川省农业气候区划图查询窗口"
    End If
    If fMainForm.Map1.Layers.Item("a-水利").Visible = True Then
       FindCustomize.Caption = "四川省水利区划图查询窗口"
    End If
    If fMainForm.Map1.Layers.Item("a-水文").Visible = True Then
       FindCustomize.Caption = "四川省农业水文地质区划图查询窗口"
    End If
    If fMainForm.Map1.Layers.Item("a-企业").Visible = True Then
       FindCustomize.Caption = "四川省乡镇企业区划图查询窗口"
    End If
    If fMainForm.Map1.Layers.Item("a-畜牧").Visible = True Then
       FindCustomize.Caption = "四川省畜牧业区划图查询窗口"
    End If
    If fMainForm.Map1.Layers.Item("a-渔业").Visible = True Then
       FindCustomize.Caption = "四川省渔业区划图查询窗口"
    End If
    If fMainForm.Map1.Layers.Item("a-种植业").Visible = True Then
       FindCustomize.Caption = "四川省种植业区划图查询窗口"
    End If
    If fMainForm.Map1.Layers.Item("a-综农").Visible = True Then
       FindCustomize.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.MousePointer = ccHourglass '设置鼠标为沙漏形
 
  '/**********选择模糊查询************/
    
    Dim FindValue As Variant                                      '查询值变量
    Dim FindYear As Variant                                       '所选年份变量
    Dim FoundFeatures As Features                                 '查询结果地物集
    Dim var As New MapXLib.Variables                              'SQL语句的查询变量集
    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

    If FindFieldCombo.Text = "县名" Or FindFieldCombo.Text = "行政代码" Or FindFieldCombo.Text = "邮政编码" Then '针对字符型字段进行模糊查询,选择年份后可查看某年的数据
        ProBar1.Visible = True
        var.Add "vValue", "%" & FindValueText.Text & "%"
        mytext = FindFieldCombo.Text & "等于" & FindValueText.Text & "的区县"
    Else '针对数字型字段
        If Optionmore.Value = False And Optionless.Value = False And Checkequal.Value = 0 Then
            MsgBox "请选择运算符号!", , "提示信息"
            FindCustomize.MousePointer = ccDefault
            Exit Sub
        End If
        ProBar1.Visible = True
        On Error GoTo NumError
        FindValue = CDbl(FindValueText.Text)
        On Error Resume Next
        var.Add "vValue", FindValue
         '/*以下是为frmselectmore的label1的caption准备*/
        If FindFieldCombo.Text = "土地面积" Then   '土地面积应与年份无关
            If Optionmore.Value = True And Checkequal.Value = 0 Then
               mytext = FindFieldCombo.Text & "大于" & FindValueText.Text & Label4.Caption & "的区县"
            End If
            If Optionmore.Value = True And Checkequal.Value = 1 Then
               mytext = FindFieldCombo.Text & "大于等于" & FindValueText.Text & Label4.Caption & "的区县"
            End If
            If Optionmore.Value = False And Optionless.Value = False And Checkequal.Value = 1 Then
               mytext = FindFieldCombo.Text & "等于" & FindValueText.Text & Label4.Caption & "的区县"
            End If
            If Optionless.Value = True And Checkequal.Value = 1 Then
               mytext = FindFieldCombo.Text & "小于等于" & FindValueText.Text & Label4.Caption & "的区县"
            End If
            If Optionless.Value = True And Checkequal.Value = 0 Then
               mytext = FindFieldCombo.Text & "小于" & FindValueText.Text & Label4.Caption & "的区县"
            End If
        Else    '其它字段与年份有关,故应说明在哪一年
            If Optionmore.Value = True And Checkequal.Value = 0 Then
               mytext = selectyearCombo1.Text & "年" & FindFieldCombo.Text & "大于" & FindValueText.Text & Label4.Caption & "的区县"
            End If
            If Optionmore.Value = True And Checkequal.Value = 1 Then
               mytext = selectyearCombo1.Text & "年" & FindFieldCombo.Text & "大于等于" & FindValueText.Text & Label4.Caption & "的区县"
            End If
            If Optionmore.Value = False And Optionless.Value = False And Checkequal.Value = 1 Then
               mytext = selectyearCombo1.Text & "年" & FindFieldCombo.Text & "等于" & FindValueText.Text & Label4.Caption & "的区县"
            End If
            If Optionless.Value = True And Checkequal.Value = 1 Then
               mytext = selectyearCombo1.Text & "年" & FindFieldCombo.Text & "小于等于" & FindValueText.Text & Label4.Caption & "的区县"
            End If
            If Optionless.Value = True And Checkequal.Value = 0 Then
               mytext = selectyearCombo1.Text & "年" & FindFieldCombo.Text & "小于" & FindValueText.Text & Label4.Caption & "的区县"
            End If
         End If
    End If
    '/*删除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
    If selectyearCombo1.Text <> "不选年份" Then '如果不选年份,则无需创建数据绑定,否则需创建数据绑定
        '/* 以下是创建数据绑定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
     End If
     '/*以下执行查询*/
     Select Case FindFieldCombo.Text
            Case "县名"
               Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("县名 like vValue", var)
           
            Case "行政代码"
               Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("行政代码 like vValue", var)
            
            Case "邮政编码"
               Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("邮政编码 like vValue", var)
            
            Case "土地面积"
            If Optionmore.Value = True And Checkequal.Value = 0 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("土地面积 > vValue", var)
            End If
            If Optionmore.Value = True And Checkequal.Value = 1 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("土地面积 >= vValue", var)
            End If
            If Optionmore.Value = False And Optionless.Value = False And Checkequal.Value = 1 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("土地面积 = vValue", var)
            End If
            If Optionless.Value = True And Checkequal.Value = 1 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("土地面积 <= vValue", var)
            End If
            If Optionless.Value = True And Checkequal.Value = 0 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("土地面积 < vValue", var)
            End If
            
            Case "播种面积"
            If Optionmore.Value = True And Checkequal.Value = 0 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("播种面积 > vValue ", var)
            End If
            If Optionmore.Value = True And Checkequal.Value = 1 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("播种面积 >= vValue", var)
            End If
            If Optionmore.Value = False And Optionless.Value = False And Checkequal.Value = 1 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("播种面积 = vValue ", var)
            End If
            If Optionless.Value = True And Checkequal.Value = 1 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("播种面积 <= vValue ", var)
            End If
            If Optionless.Value = True And Checkequal.Value = 0 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("播种面积 < vValue ", var)
            End If
            
            Case "耕地面积"
            If Optionmore.Value = True And Checkequal.Value = 0 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("耕地面积 > vValue", var)
            End If
            If Optionmore.Value = True And Checkequal.Value = 1 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("耕地面积 >= vValue", var)
            End If
            If Optionmore.Value = False And Optionless.Value = False And Checkequal.Value = 1 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("耕地面积 = vValue", var)
            End If
            If Optionless.Value = True And Checkequal.Value = 1 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("耕地面积 <= vValue", var)
            End If
            If Optionless.Value = True And Checkequal.Value = 0 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("耕地面积 < vValue", var)
            End If
            
            Case "县总人口"
            If Optionmore.Value = True And Checkequal.Value = 0 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("县总人口 > vValue", var)
            End If
            If Optionmore.Value = True And Checkequal.Value = 1 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("县总人口 >= vValue", var)
            End If
            If Optionmore.Value = False And Optionless.Value = False And Checkequal.Value = 1 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("县总人口 = vValue", var)
            End If
            If Optionless.Value = True And Checkequal.Value = 1 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("县总人口 <= vValue", var)
            End If
            If Optionless.Value = True And Checkequal.Value = 0 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("县总人口 < vValue", var)
            End If

            Case "非农业人口"
            If Optionmore.Value = True And Checkequal.Value = 0 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("非农业人口 > vValue", var)
            End If
            If Optionmore.Value = True And Checkequal.Value = 1 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("非农业人口 >= vValue", var)
            End If
            If Optionmore.Value = False And Optionless.Value = False And Checkequal.Value = 1 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("非农业人口 = vValue", var)
            End If
            If Optionless.Value = True And Checkequal.Value = 1 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("非农业人口<= vValue", var)
            End If
            If Optionless.Value = True And Checkequal.Value = 0 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("非农业人口 < vValue", var)
            End If
            
            Case "农村人口"
            If Optionmore.Value = True And Checkequal.Value = 0 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("农村人口 > vValue", var)
            End If
            If Optionmore.Value = True And Checkequal.Value = 1 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("农村人口 >= vValue", var)
            End If
            If Optionmore.Value = False And Optionless.Value = False And Checkequal.Value = 1 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("农村人口 = vValue", var)
            End If
            If Optionless.Value = True And Checkequal.Value = 1 Then
            Set FoundFeatures = fMainForm.Map1.Layers("1g12").Search("农村人口 <= vValue", var)
            End If

⌨️ 快捷键说明

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