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

📄 frmmain.frm

📁 都是基于VB所做的程序集合,值得大家作为实践的参考资料.
💻 FRM
字号:
VERSION 5.00
Object = "{02BEE3A6-4264-45B0-93C8-76FBBA329150}#5.2#0"; "SuperLegend.ocx"
Object = "{A61255F7-0A20-431C-86CE-78C14314BE9E}#5.2#0"; "SuperWkspManager.ocx"
Object = "{03ED3B1E-ED1B-4A2E-8FE3-D8D1A673F5D4}#5.2#0"; "SuperMap.ocx"
Begin VB.Form frmMain 
   BorderStyle     =   3  'Fixed Dialog
   Caption         =   "拖拽SuperWkspManager范例"
   ClientHeight    =   6300
   ClientLeft      =   45
   ClientTop       =   330
   ClientWidth     =   9570
   Icon            =   "frmMain.frx":0000
   LinkTopic       =   "Form1"
   MaxButton       =   0   'False
   MinButton       =   0   'False
   ScaleHeight     =   6300
   ScaleWidth      =   9570
   StartUpPosition =   2  'CenterScreen
   Begin SuperMapLib.SuperMap SuperMap1 
      Height          =   6135
      Left            =   2280
      TabIndex        =   3
      Top             =   120
      Width           =   7215
      _Version        =   327682
      _ExtentX        =   12726
      _ExtentY        =   10821
      _StockProps     =   160
   End
   Begin VB.PictureBox Picture1 
      AutoRedraw      =   -1  'True
      AutoSize        =   -1  'True
      Height          =   735
      Left            =   2520
      ScaleHeight     =   675
      ScaleWidth      =   675
      TabIndex        =   2
      Top             =   1920
      Width           =   735
   End
   Begin SuperWkspManagerLib.SuperWkspManager SuperWkspManager1 
      Height          =   3135
      Left            =   0
      TabIndex        =   1
      Top             =   120
      Width           =   2175
      _Version        =   327682
      _ExtentX        =   3836
      _ExtentY        =   5530
      _StockProps     =   0
   End
   Begin SuperLegendLib.SuperLegend SuperLegend1 
      Height          =   2895
      Left            =   0
      TabIndex        =   0
      Top             =   3360
      Width           =   2175
      _Version        =   327682
      _ExtentX        =   3836
      _ExtentY        =   5106
      _StockProps     =   132
   End
   Begin SuperMapLib.SuperWorkspace SuperWorkspace1 
      Left            =   1680
      Top             =   3360
      _Version        =   327682
      _ExtentX        =   847
      _ExtentY        =   847
      _StockProps     =   0
   End
End
Attribute VB_Name = "frmMain"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'=====================================SuperMap Objects示范工程说明=======================================
'
'功能简介:示范对SuperWkspManager上的节点进行拖拽,如果拖拽的节点是数据集或者地图,拖拽到SuperMap上,那么就
'打开显示
'所用控件:SueprMap控件、SuperWorkspace控件、SuperWkspManager控件和SuperLegend控件
'所用数据:..\Data\world\World.sdb和World.sdd两个文件
'操作说明:
'        1、选中数据集或者地图节点,拖拽到SuperMap上。
'
'===================================SuperMap Objects示范工程说明结束=====================================

Option Explicit
Dim m_bDragFlag As Boolean  '是否进行拖拽操作变量
Dim m_node As soTreeNode    '记录拖拽的节点

Private Sub Form_Load()
    SuperWkspManager1.Connect SuperWorkspace1.Handle
    SuperMap1.Connect SuperWorkspace1.Handle
    SuperLegend1.Connect SuperMap1.Handle
    SuperWorkspace1.Open App.Path & "\..\data\world\WorldMap.smw"
    SuperWkspManager1.Refresh
    SuperLegend1.Refresh
End Sub

Private Sub Form_Unload(Cancel As Integer)
    Set m_node = Nothing
    SuperLegend1.Disconnect
    SuperWkspManager1.Disconnect
    SuperMap1.Close
    SuperMap1.Disconnect
    SuperWorkspace1.Close
End Sub


Private Sub SuperLegend1_Modified()
    SuperMap1.Refresh
End Sub


Private Sub SuperMap1_DragDrop(Source As Control, x As Single, y As Single)
    If Source.Name = "SuperWkspManager1" Then
        Dim objdt As soDataset
        Dim objds As soDataSource
        Dim strselect As String, strparent As String
        Dim objNode As soTreeNode
        
        Set objNode = SuperWkspManager1.TreeView(SuperWkspManager1.ActiveTab).SelectedNode
        Select Case objNode.Type  '判断托拽的节点的类型
            Case scsDataset:
                strparent = objNode.Parent.Text
                strselect = objNode.Text
                Set objds = SuperWorkspace1.Datasources(strparent)
                Set objdt = objds.Datasets(strselect)
                SuperMap1.Layers.AddDataset objdt, True
                SuperMap1.ViewEntire
                SuperLegend1.Refresh
            Case scsMap:
                strselect = objNode.Text
                SuperMap1.OpenMap strselect
                SuperMap1.ViewEntire
                SuperLegend1.Refresh
        End Select
     End If
End Sub
'
Private Sub SuperWkspManager1_DragDrop(Source As Control, x As Single, y As Single)
    m_bDragFlag = False
End Sub

Private Sub SuperWkspManager1_DragOver(Source As Control, x As Single, y As Single, State As Integer)
    m_bDragFlag = False
End Sub


Private Sub SuperWkspManager1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
    
    Set SuperWkspManager1.TreeView(SuperWkspManager1.ActiveTab).SelectedNode = SuperWkspManager1.TreeView(SuperWkspManager1.ActiveTab).GetNodeAt(ScaleX(x, vbTwips, vbPixels), ScaleY(y, vbTwips, vbPixels))
    Set m_node = SuperWkspManager1.TreeView(SuperWkspManager1.ActiveTab).SelectedNode
    If Not SuperWkspManager1.TreeView(SuperWkspManager1.ActiveTab).GetNodeAt(ScaleX(x, vbTwips, vbPixels), ScaleY(y, vbTwips, vbPixels)) Is Nothing Then
        m_bDragFlag = True
    End If
End Sub

Private Sub SuperWkspManager1_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
    If Button = 1 And m_bDragFlag Then
        SuperWkspManager1.DragIcon = LoadPicture(App.Path & "\hmove.cur")
        SuperWkspManager1.Drag vbBeginDrag
    End If
End Sub


Private Sub SuperWkspManager1_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single)
    m_bDragFlag = False
End Sub

⌨️ 快捷键说明

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