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

📄 frmatt.frm

📁 用于河南省主体功能区区划的一个小地理信息系统
💻 FRM
📖 第 1 页 / 共 2 页
字号:
VERSION 5.00
Object = "{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCTL.OCX"
Begin VB.Form frmatt 
   Caption         =   "属性浏览"
   ClientHeight    =   5205
   ClientLeft      =   3600
   ClientTop       =   2985
   ClientWidth     =   7590
   Icon            =   "frmatt.frx":0000
   LinkTopic       =   "Form1"
   ScaleHeight     =   5205
   ScaleWidth      =   7590
   Begin MSComctlLib.ProgressBar Prgbarsel 
      Height          =   255
      Left            =   720
      TabIndex        =   13
      Top             =   240
      Width           =   1935
      _ExtentX        =   3413
      _ExtentY        =   450
      _Version        =   393216
      Appearance      =   1
   End
   Begin VB.CommandButton Cmdstatistics 
      Height          =   375
      Left            =   6360
      Picture         =   "frmatt.frx":0442
      Style           =   1  'Graphical
      TabIndex        =   12
      ToolTipText     =   "统计"
      Top             =   120
      Width           =   375
   End
   Begin VB.CommandButton Cmdarrow 
      Height          =   375
      Left            =   2880
      Picture         =   "frmatt.frx":0C64
      Style           =   1  'Graphical
      TabIndex        =   10
      ToolTipText     =   "指针"
      Top             =   120
      Width           =   375
   End
   Begin VB.CommandButton cmdsel 
      Height          =   375
      Index           =   2
      Left            =   4080
      Picture         =   "frmatt.frx":11A6
      Style           =   1  'Graphical
      TabIndex        =   9
      ToolTipText     =   "反转"
      Top             =   120
      Width           =   375
   End
   Begin VB.CommandButton cmdsel 
      Height          =   375
      Index           =   0
      Left            =   3240
      Picture         =   "frmatt.frx":1870
      Style           =   1  'Graphical
      TabIndex        =   8
      ToolTipText     =   "全选"
      Top             =   120
      Width           =   375
   End
   Begin VB.CommandButton cmdsel 
      Height          =   375
      Index           =   1
      Left            =   3600
      Picture         =   "frmatt.frx":213A
      Style           =   1  'Graphical
      TabIndex        =   7
      ToolTipText     =   "清除选择"
      Top             =   120
      Width           =   375
   End
   Begin VB.CommandButton cmdquery 
      Height          =   375
      Left            =   6720
      Picture         =   "frmatt.frx":29B0
      Style           =   1  'Graphical
      TabIndex        =   6
      ToolTipText     =   "条件查询"
      Top             =   120
      Width           =   375
   End
   Begin VB.CommandButton cmdidentify 
      Height          =   375
      Left            =   5880
      MaskColor       =   &H00FFFFFF&
      Picture         =   "frmatt.frx":31D2
      Style           =   1  'Graphical
      TabIndex        =   5
      ToolTipText     =   "查询"
      Top             =   120
      Width           =   375
   End
   Begin MSComctlLib.ImageList imglsticon 
      Left            =   6840
      Top             =   2400
      _ExtentX        =   1005
      _ExtentY        =   1005
      BackColor       =   -2147483643
      ImageWidth      =   16
      ImageHeight     =   16
      MaskColor       =   12632256
      _Version        =   393216
      BeginProperty Images {2C247F25-8591-11D1-B16A-00C0F0283628} 
         NumListImages   =   1
         BeginProperty ListImage1 {2C247F27-8591-11D1-B16A-00C0F0283628} 
            Picture         =   "frmatt.frx":3714
            Key             =   "selecteditem"
         EndProperty
      EndProperty
   End
   Begin VB.CommandButton cmdup 
      Height          =   375
      Left            =   5520
      MaskColor       =   &H00FFFFFF&
      Picture         =   "frmatt.frx":3B66
      Style           =   1  'Graphical
      TabIndex        =   3
      ToolTipText     =   "提上"
      Top             =   120
      Width           =   375
   End
   Begin VB.CommandButton cmdbutton 
      Height          =   375
      Index           =   1
      Left            =   5040
      Picture         =   "frmatt.frx":4440
      Style           =   1  'Graphical
      TabIndex        =   2
      ToolTipText     =   "降序"
      Top             =   120
      Width           =   375
   End
   Begin VB.CommandButton cmdbutton 
      BackColor       =   &H8000000A&
      Height          =   375
      Index           =   0
      Left            =   4560
      MaskColor       =   &H00E0E0E0&
      Picture         =   "frmatt.frx":4CB6
      Style           =   1  'Graphical
      TabIndex        =   1
      ToolTipText     =   "升序"
      Top             =   120
      Width           =   375
   End
   Begin MSComctlLib.ListView lvwatt 
      Height          =   3495
      Left            =   600
      TabIndex        =   0
      Top             =   600
      Width           =   5895
      _ExtentX        =   10398
      _ExtentY        =   6165
      LabelWrap       =   -1  'True
      HideSelection   =   -1  'True
      AllowReorder    =   -1  'True
      _Version        =   393217
      ForeColor       =   0
      BackColor       =   16777215
      BorderStyle     =   1
      Appearance      =   1
      NumItems        =   0
   End
   Begin VB.Label Lblnum 
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   9
         Charset         =   134
         Weight          =   700
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   255
      Left            =   1560
      TabIndex        =   11
      Top             =   240
      Width           =   1095
   End
   Begin VB.Label Lblselnum 
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   9
         Charset         =   134
         Weight          =   700
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   255
      Left            =   360
      TabIndex        =   4
      Top             =   240
      Width           =   975
   End
End
Attribute VB_Name = "frmatt"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
'定义记录集
Dim recs As MapObjects2.Recordset
'定义选定列索引
Dim selcol As Integer
'判断按钮是否可用
Dim appcmdbutton As Boolean
'判断选定标题行是否可用
Dim appselcol As Boolean
'判断是否按cmdsel为全选
Dim selallitems As Boolean

Dim queryname As String, query As String

Dim queryrec As MapObjects2.Recordset
'声明属性浏览框对应的图层名
Dim attlyrname As String

Dim repeated As Boolean
'选择的字段
Dim selcoltxt As String



 Sub filllvwatt()

 On Error GoTo cancel
  '判断活动图层
  Dim Index As Integer
  Index = frmmain.TuLi.getActiveLayer
  
  If Index = -1 Then
    MsgBox "当前没有活动图层。", vbCritical, "停止"
    Exit Sub
  End If

  '判断活动图层属性,获得图层记录集和字段特性集
  attlyrname = frmmain.Map1.Layers(Index).Name
  If frmmain.Map1.Layers(attlyrname).LayerType = moMapLayer Then
  
  Set recs = frmmain.Map1.Layers(attlyrname).Records
  If recs.EOF Then Exit Sub
  Frmwait.ProgressBar1.Max = recs.Count
  Lblnum.Caption = "记录 " & recs.Count
  Dim desc As TableDesc
  Set desc = recs.TableDesc
  '清空列表浏览器标题行,重新添加
  lvwatt.ColumnHeaders.Clear
  
  lvwatt.ColumnHeaders.Add , , "FeatureId"
  Dim i As Integer
  For i = 0 To desc.FieldCount - 1
     lvwatt.ColumnHeaders.Add , , desc.FieldName(i)
  Next
  '清空列表浏览器项目,逐行添加
  lvwatt.ListItems.Clear
  Frmwait.Show
  Dim Prgs As Long
  'Prgs = 0
  Do While Not recs.EOF
     Dim newitem As ListItem
     Set newitem = lvwatt.ListItems.Add()
     newitem.Text = recs.Fields("FeatureId").Value 'recs(desc.FieldName(0)).Value '"[" & desc.FieldName(i) & "]"
     '逐行添加子项目
      For i = 0 To desc.FieldCount - 1
        newitem.ListSubItems.Add , , recs(desc.FieldName(i)).ValueAsString
      Next i
      newitem.Selected = False
      recs.MoveNext
      Prgs = Prgs + 1
      Frmwait.ProgressBar1.Value = Prgs
      Frmwait.Label1.Caption = "已完成" & Prgs
      DoEvents
  Loop
    
    If Prgs = Frmwait.ProgressBar1.Max Then
        Unload Frmwait
    End If
Else
    MsgBox "该图层为栅格图像数据!", vbExclamation, "提示"
    Exit Sub
End If
  
  frmatt.Show 1
cancel:
End Sub

Private Sub Cmdarrow_Click()
lvwatt.SetFocus
lvwatt.MousePointer = ccArrow
frmattidentify = False
End Sub

Private Sub cmdbutton_Click(Index As Integer)
    lvwatt.SetFocus
  
  '判断按钮是否可用
   If appcmdbutton = True Then

      selcoltxt = lvwatt.ColumnHeaders(selcol).Text
      'Label2.Caption = recs.Fields(selcoltxt).Type
      '判断field类型确定排序
      If recs.Fields(selcoltxt).Type = moString Or _
         recs.Fields(selcoltxt).Type = moBoolean Then
         lvwatt.SortKey = selcol - 1
         lvwatt.Sorted = True
   
        '判断选择按钮
         Select Case Index
            Case 0
                lvwatt.SortOrder = lvwAscending
            Case 1
                lvwatt.SortOrder = lvwDescending
         End Select
     
      ElseIf recs.Fields(selcoltxt).Type = moLong Or _
             recs.Fields(selcoltxt).Type = moDouble Or _
             recs.Fields(selcoltxt).Type = moDate Then
             lvwatt.Sorted = False
             '算出统计最小值,写出排序查询字符串
             Dim stats As MapObjects2.Statistics
             Set stats = recs.CalculateStatistics(selcoltxt)
          
             Dim recs2 As MapObjects2.Recordset
             Dim orderstr As String
     
          Select Case Index
             Case 0
             orderstr = selcoltxt & ">= " & stats.Min & " order by " & selcoltxt & " asc"
             Case 1
             orderstr = selcoltxt & ">= " & stats.Min & " order by " & selcoltxt & " desc"
          End Select
          
          Set recs2 = frmmain.Map1.Layers(attlyrname).SearchExpression(orderstr)
          Dim desc As TableDesc
          Set desc = recs2.TableDesc
'            lvwatt.ColumnHeaders.Clear
'
'  lvwatt.ColumnHeaders.Add , , "FeatureId"
'  For i = 0 To desc.FieldCount - 1
'     lvwatt.ColumnHeaders.Add , , desc.FieldName(i)
'  Next
          
          
           '清空列表浏览器项目,逐行添加
          lvwatt.ListItems.Clear
          Do While Not recs2.EOF
             Dim newitem As ListItem
             Set newitem = lvwatt.ListItems.Add()
             newitem.Text = recs2.Fields("FeatureId").Value 'recs(desc.FieldName(0)).Value '"[" & desc.FieldName(i) & "]"
           '逐行添加子项目
             Dim i As Integer
             For i = 0 To desc.FieldCount - 1
                newitem.ListSubItems.Add , , recs2(desc.FieldName(i)).ValueAsString
             Next i
             newitem.Selected = False
            recs2.MoveNext
          Loop
         lvwatt.Refresh
        '在列表浏览器中高亮显示选中记录
         getfocus
    End If
End If

End Sub

Private Sub cmdidentify_Click()
lvwatt.MousePointer = ccArrowQuestion
frmattidentify = True
lvwatt.SetFocus
End Sub

Private Sub cmdquery_Click()

Call frmquery.filllvwfield
frmquery.ZOrder 0

End Sub

Private Sub cmdsel_Click(Index As Integer)

repeated = False
lvwatt.MultiSelect = True
Dim m As Integer

Select Case Index
    Case 0
    For m = 1 To lvwatt.ListItems.Count
    lvwatt.ListItems(m).Selected = True
    Next m
    Lblselnum.Caption = "选中 " & lvwatt.ListItems.Count
    '判断是否有选定行集,并将其初始化
   
    Dim i As Integer

⌨️ 快捷键说明

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