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

📄 frmmain.frm

📁 都是基于VB所做的程序集合,值得大家作为实践的参考资料.
💻 FRM
字号:
VERSION 5.00
Object = "{03ED3B1E-ED1B-4A2E-8FE3-D8D1A673F5D4}#5.2#0"; "SuperMap.ocx"
Begin VB.Form frmMain 
   BorderStyle     =   3  'Fixed Dialog
   Caption         =   "多媒体效果"
   ClientHeight    =   5295
   ClientLeft      =   45
   ClientTop       =   330
   ClientWidth     =   8685
   Icon            =   "frmMain.frx":0000
   LinkTopic       =   "Form2"
   MaxButton       =   0   'False
   MinButton       =   0   'False
   ScaleHeight     =   5295
   ScaleWidth      =   8685
   ShowInTaskbar   =   0   'False
   StartUpPosition =   2  'CenterScreen
   Begin SuperMapLib.SuperMap SuperMap1 
      Height          =   4740
      Left            =   30
      TabIndex        =   11
      Top             =   525
      Width           =   7275
      _Version        =   327682
      _ExtentX        =   12832
      _ExtentY        =   8361
      _StockProps     =   160
      Appearance      =   1
   End
   Begin SuperMapLib.SuperWorkspace SuperWorkspace1 
      Left            =   3840
      Top             =   1620
      _Version        =   327682
      _ExtentX        =   847
      _ExtentY        =   847
      _StockProps     =   0
   End
   Begin VB.CommandButton btnAction 
      Caption         =   "刷新"
      Height          =   450
      Index           =   7
      Left            =   6480
      TabIndex        =   7
      Top             =   30
      Width           =   1065
   End
   Begin VB.CommandButton btnAction 
      Caption         =   "选择"
      Height          =   450
      Index           =   0
      Left            =   15
      TabIndex        =   6
      Top             =   30
      Width           =   1065
   End
   Begin VB.CommandButton btnAction 
      Caption         =   "漫游"
      Height          =   450
      Index           =   1
      Left            =   1080
      TabIndex        =   5
      Top             =   30
      Width           =   1065
   End
   Begin VB.CommandButton btnAction 
      Caption         =   "放大"
      Height          =   450
      Index           =   2
      Left            =   2160
      TabIndex        =   4
      Top             =   30
      Width           =   1065
   End
   Begin VB.CommandButton btnAction 
      Caption         =   "缩小"
      Height          =   450
      Index           =   3
      Left            =   3240
      TabIndex        =   3
      Top             =   30
      Width           =   1065
   End
   Begin VB.CommandButton btnAction 
      Caption         =   "自由缩放"
      Height          =   450
      Index           =   4
      Left            =   4320
      TabIndex        =   2
      Top             =   30
      Width           =   1065
   End
   Begin VB.CommandButton btnAction 
      Caption         =   "全幅显示"
      Height          =   450
      Index           =   5
      Left            =   5400
      TabIndex        =   1
      Top             =   30
      Width           =   1065
   End
   Begin VB.CommandButton btnAction 
      Caption         =   "退出"
      Height          =   450
      Index           =   6
      Left            =   7575
      TabIndex        =   0
      Top             =   30
      Width           =   1065
   End
   Begin VB.Frame Frame1 
      Height          =   975
      Left            =   7335
      TabIndex        =   8
      Top             =   450
      Width           =   1335
      Begin VB.OptionButton OptPicAvi 
         Caption         =   "显示视频"
         Height          =   255
         Index           =   1
         Left            =   120
         TabIndex        =   10
         Top             =   600
         Width           =   1095
      End
      Begin VB.OptionButton OptPicAvi 
         Caption         =   "显示图片"
         Height          =   255
         Index           =   0
         Left            =   120
         TabIndex        =   9
         Top             =   240
         Width           =   1095
      End
   End
End
Attribute VB_Name = "frmMain"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False

'=====================================SuperMap Objects示范工程说明=======================================
'
'功能简介:示范SuperMap Objects平面坐标和地理坐标的转换功能及控件选择功能
'所用控件:SuperMap控件、SuperWorkspace控件。
'所用数据:\Data\Multimedia\SampleData.sdb和SampleData.sdd两个文件
'操作说明:
'        1、单击"选择"、"放大"、"缩小"、"自由缩放"、"全幅显示"、"漫游"、"刷新"进行相应的地图操作
'        2、选择"显示图片",在SuperMap1上选择一个记录,则有相应的图片窗口弹出;
'        3、选择"显示视频",在SuperMap1上选择一个记录,则有相应的AVI视频窗口弹出;
'
'===================================SuperMap Objects示范工程说明结束========================================

Option Explicit

Private Sub btnAction_Click(Index As Integer)
    '设置SuperMap1的操作状态
    Select Case Index
        Case 0
            SuperMap1.Action = scaSelect
        Case 1
            SuperMap1.Action = scaPan
        Case 2
            SuperMap1.Action = scaZoomIn
        Case 3
            SuperMap1.Action = scaZoomOut
        Case 4
            SuperMap1.Action = scaZoomFree
        Case 5
            SuperMap1.ViewEntire
        Case 6
            SuperMap1.Layers.RemoveAll
            SuperMap1.Disconnect
            SuperMap1.Close
            SuperWorkspace1.Datasources.RemoveAll
            SuperWorkspace1.Close
            End
        Case 7
            SuperMap1.Refresh
    End Select
    SuperMap1.Refresh
End Sub

Private Sub Form_Load()
    SuperMap1.Connect SuperWorkspace1.Handle
    
    Dim strAlias As String               '数据源别名
    Dim nEngineType As seEngineType      '数据引擎类型
    Dim strDataSourceName As String      '数据源绝对路径名
    Dim objDataSource As soDataSource    '数据源对象,指向打开的数据源
    Dim objLayer As soLayer              '图层对象变量,指向将要打开的图层
    Dim i As Integer                     '循环变量
    
    nEngineType = sceSDBPlus             'SuperMap支持多种类型,此处为SDB类型
    strDataSourceName = App.Path & "\..\Data\Multimedia\sampledata.sdb"   'CommonDialog1.FileName
    strAlias = "world"
    
    '打开数据源
    Set objDataSource = SuperWorkspace1.OpenDataSource(strDataSourceName, strAlias, nEngineType, True)
    If objDataSource Is Nothing Then
        MsgBox "打开数据源失败!", vbInformation
    Else
        For i = 1 To objDataSource.Datasets.Count
            '把数据源中的所有图层加入到SuperMap中
            Set objLayer = SuperMap1.Layers.AddDataset(objDataSource.Datasets.Item(i), True)
        Next
    End If
    '刷新地图窗口
    If SuperMap1.Layers.Count <= 0 Then Exit Sub
    SuperMap1.Refresh
    
    '释放内存
    Set objDataSource = Nothing
    Set objLayer = Nothing
End Sub



Private Sub SuperMap1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
    Dim objpnt As New soGeoPoint
    Dim objDTV As soDatasetVector
    Dim objRcd As soRecordset
    
    '转换平面坐标位地理坐标
    objpnt.x = SuperMap1.PixelToMapX(ScaleX(x, vbTwips, vbPixels))
    objpnt.y = SuperMap1.PixelToMapY(ScaleX(y, vbTwips, vbPixels))
    
    '获取用来查询的数据集
    Set objDTV = SuperMap1.Layers(1).Dataset
    '在相应的数据集上进行空间选择,并保存记录
    Set objRcd = objDTV.QueryEx(objpnt, scsPointInPolygon, "")
       
    If objRcd Is Nothing Then Exit Sub
    If objRcd.RecordCount < 1 Then Exit Sub
    SuperMap1.selection.RemoveAll
    '报查到的记录追加到选择集合中,并亮显
    SuperMap1.selection.FromRecordset objRcd
    SuperMap1.Refresh
    objRcd.MoveFirst
    
    Dim flname As String
    
    If OptPicAvi(0).Value = True Then
        If IsNull(Trim(objRcd.GetFieldValue("Pic"))) Then
            FrmPic.Hide
            FrmAvi.Hide
            Exit Sub
        End If
        '读取图片名称
        flname = Trim(objRcd.GetFieldValue("Pic"))
        '装载图片并显示
        FrmPic.Image1.Picture = LoadPicture(App.Path & "\..\Data\" & flname)
        FrmPic.Image1.Refresh
        FrmPic.Show
        FrmAvi.Hide
    ElseIf OptPicAvi(1).Value = True Then
        If IsNull(Trim(objRcd.GetFieldValue("Avi"))) Then
            FrmPic.Hide
            FrmAvi.Hide
            Exit Sub
        End If
        '读取AVI名称
        flname = Trim(objRcd.GetFieldValue("Avi"))
        '装载AVI并显示
        FrmAvi.MdPlayer.Open (App.Path & "\..\Data\" & flname)
        FrmAvi.Show
        FrmPic.Hide
    End If
    Set objpnt = Nothing
End Sub


⌨️ 快捷键说明

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