SuperMap Objects 初级开发教程

Size: px
Start display at page:

Download "SuperMap Objects 初级开发教程"

Transcription

1 SuperMap Objects 5 开发教程 ( 初级篇 ) 北京超图地理信息技术有限公司 2006 年 4 月 北京

2 SuperMap Objects 初级开发教程 版权所有 , 北京超图地理信息技术有限公司 保留一切权力 警告, 本文档包含的所有内容是北京超图地理信息技术有限公司的财产, 受到著作权法和国际公约的保护 未得到本公司的书面许可, 不能以任何方式 ( 电子的或机械的, 包括影印 ) 翻印或转载本文档的任何部分 本文档并不代表供应商或其代理的承诺, 北京超图地理信息技术有限公司可在不作任何申明的情况下对本文档内容进行修改 SuperMap 及徽标 是北京超图地理信息技术有限公司的注册商标 SuperMap Objects 的一切有关权利属于北京超图地理信息技术有限公司所有 本手册中所涉及的软件产品及其后续升级产品均由北京超图地理信息技术有限公司制作并负责全权销售 本文当中提到的其它公司及其产品的商标所有权属于该商标的所有者 北京超图地理信息技术有限公司联系方式 : 地址 : 北京市海淀区学清路 8 号科技财富中心 B 座 7 层邮编 : 电话 : 传真 : 网址 : 销售电子信箱 :sales@supermap.com 技术支持电子信箱 :support@supermap.com SuperMap 欢迎您的任何建议和意见

3 目 录 第 1 章 前 言 入门教程能帮助你学会什么? 适用对象 涉及对象 ( 含控件 ) 和接口 ( 属性 事件 方法 ) 使用数据 本书内容...2 第 2 章 VISUAL BASIC 6.0 开发入门 第一步 : 创建一个新工程 :MyFirstSuperMap 第二步 : 加入 SuperMap Objects 控件 第三步 : 打开地图 添加图层 第四步 : 地图浏览功能 第五步 : 地图到属性查询 第六步 : 属性到地图查询...10 第 3 章 DELPHI 7 开发入门 第一步 : 创建一个新工程 :MyFirstSuperMap 第二步 : 加入 SuperMap Objects 控件 第三步 : 打开地图 添加图层 第四步 : 地图浏览功能 第五步 : 地图到属性查询 第六步 : 属性到地图查询...19 第 4 章 VISUAL C 开发入门 第一步 : 创建 Visual C 工程 :MyFirstSuperMap 第二步 : 加载 SuperMap Objects 控件 第三步 : 打开地图 添加图层 第四步 : 地图浏览功能 第五步 : 地图到属性查询 第六步 : 属性到地图查询...37 第 5 章 VISUAL BASIC.NET 2003 开发入门 第一步 : 创建一个新工程 :MyFirstSuperMap...39 I

4 SuperMap Objects 初级开发教程 5.2 第二步 : 加入 SuperMap Objects 控件 第三步 : 打开地图 添加图层 第四步 : 地图浏览功能 第五步 : 地图到属性查询 第六步 : 属性到地图查询...47 第 6 章 VISUAL C#.NET 2003 开发入门 第一步 : 创建一个新工程 :MyFirstSuperMap 第二步 : 加载 SuperMap Objects 控件 第三步 : 打开地图 添加图层 第四步 : 地图浏览功能 第五步 : 地图到属性查询 第六步 : 属性到地图查询...57 第 7 章 附录 如何注册 SuperMap Objects 运行许可? 如何随您的应用系统分发 SuperMap Objects?...59 II

5 第 1 章前言 1.1 入门教程能帮助你学会什么? 本教程通过实现一个简单程序, 帮助您了解如何使用 SuperMap Objects 控件开发应用程序 阅读完本教程, 您应该能够回答如下问题 : 1. 如何把 SuperMap Objects 控件添加到工程中? 2. 如何使用 SuperWorkspace 控件打开 SuperMap 数据源? 3. 如何把数据源中的一个数据集添加到地图窗口 (SuperMap 控件 ) 中显示? 4. 如何实现基本的地图浏览功能, 比如 : 放大 缩小 漫游等? 5. 如何实现地图到属性的查询功能? 6. 如何实现属性到地图的查询功能? 同时, 您还能理解 : 1. 工作空间和数据源之间的关系 2. 数据源和数据集之间的关系 3. 数据集和图层之间的关系 1.2 适用对象 本书介绍了如何使用 SuperMap Objects COM 组件结合 Visual Basic 6.0 Visual C Delphi Visual Basic.NET 2003 Visual C#.NET2003 五种语言简单地实现 GIS 基本功能的开发, 因此本书适合于具备上述任一种语言基础和初次接触 SuperMap Objects COM 组件进行开发的用户 1.3 涉及对象 ( 含控件 ) 和接口 ( 属性 事件 方法 ) 1

6 SuperMap Objects 初级开发教程 对象属性方法事件 SuperMap 控件 Action 属性 Selection 属性 Layers 属性 ViewEntire 方法 Connect 方法 Refresh 方法 Disconnect 方法 GeometrySelected 事件 SuperWorkspace 控件 Object 属性 ( 或 Handle 属性 ) OpenDataSource 方法 sodatasource 对象 sodatasets 对象 Count 属性 Item 属性 sodatasetvector 对象 Query 方法 solayer 对象 AddDataset 方法 sorecordset 对象 FieldCount 属性 GetFieldInfo 方法 GetFieldValue 方 法 MoveFirst 方法 soselection 对象 ToRecordset 方法 FromRecordset 方法 1.4 使用数据 本程序演示用 SuperMap Objects 控件打开地图, 并对其进行基本操作和属性与地图之间的双向查询 所用的数据为世界地图 (World.sdb), 其中包括世界经纬网 (Grid) 各国首都 (Capital) 和世界地图 (World) 等多个地图图层, 打开时, 把所有图层加入到 SupeMap 中显示 世界地图 :World.sdb World.sdd 1.5 本书内容 本书是 SuperMap Objects 开发入门教程, 总共 7 章, 第 1 章前言介绍本书的内容和特点,2 到 6 章分别介绍使用不同的开发语言如何实现加载 SuperMap Objects 控件, 基于 SuperMap Objects 控件实现地图浏览 地图到属性查询和属性到地图查询等基本 GIS 功能的开发过程, 旨在指导开发人员快速掌握全组件式地理信息系统 SuperMap Objects 的开发方法 本书包含目前最流行的 5 种开发语言的入门教程内容, 开发人员可以选择阅读自己熟悉和喜欢的开发语言的入门教程 2

7 第 2 章 Visual Basic 6.0 开发入门 2.1 第一步 : 创建一个新工程 :MyFirstSuperMap 1. 创建一个工作目录 C:\MyProject 2. 从帮助文档 GettingStarted.chm 的首页中点击链接下载数据文件 World..zip( 包含 World.smw 工作空间文件和 World.sdb World.sdd 文件 ) 到工作目 C:\MyProject 3. 启动 VB 4. 在工作目录 C:\MyProject 下创建一个新工程 : MyFirstSuperMap 2.2 第二步 : 加入 SuperMap Objects 控件 1. 添加 SuperMap Objects 控件到 ToolBox( 工具箱 ) 用 Ctrl+T 快捷键或在 ToolBox( 工具箱 ) 上单击鼠标右键, 点击 "Components..." 出现如下对话框 : 3

8 SuperMap Objects 初级开发教程 图 2.1 VB6 加载控件窗口 选中 Supermap Objects Core Controls ( 前面的框内出现一个钩即为选中 ), 点击确定 ToolBox 中就会多出图中所示两个控件 4

9 第 2 章 Visual Basic 开发入门 图 2.2 加载控件后控件面板 2. 把这两个控件加入到窗体 Form1 中, 如图 5

10 SuperMap Objects 初级开发教程 图 2.3 添加 SuperMap 控件后窗口 2.3 第三步 : 打开地图 添加图层 在窗体中加入以下代码 : Private Sub Form_Load() ' 建立 SuperWorkspace 与 SuperMap 之间的联系 SuperMap1.Connect(SuperWorkspace1.Object) Dim stralias As String ' 数据源别名 Dim nenginetype As seenginetype ' 数据引擎类型 Dim strdatasourcename As String ' 数据源绝对路径名 Dim objdatasource As sodatasource ' 数据源对象, 指向打开的数据源 Dim breadonly As Boolean ' 数据源里的数据是否只读 Dim objlayer As solayer ' 图层对象变量, 指向将要打开的图层 Dim baddtohead As Boolean ' 是否加到最上面 Dim i As Integer ' 循环变量 stralias = "MyDataSource" ' 原则上别名可以任意给, 建议取成和数据源文件主名 nenginetype = scesdbplus 'SuperMap 支持多种类型, 此处为 SDB+ 类型 strdatasourcename = "c:\myproject\world.sdb" breadonly = False ' 不设为只读 ' 打开数据源 objdatasource = SuperWorkspace1.OpenDataSource(strDataSourceName, stralias, nenginetype, breadonly) If objdatasource Is Nothing Then 6

11 第 2 章 Visual Basic 开发入门 MsgBox(" 打开数据源失败!", vbinformation) Else For i = 1 To objdatasource.datasets.count ' 把数据源中的所有图层加入到 SuperMap 中 baddtohead = True objlayer = SuperMap1.Layers.AddDataset(objDataSource.Datasets.Item(i), baddtohead) Next End If ' 刷新地图窗口 SuperMap1.Refresh() ' 修改选中对象风格 SuperMap1.selection.Style.PenColor = RGB(231, 77, 0) SuperMap1.selection.Style.PenWidth = 1 SuperMap1.selection.Style.PenStyle = 1 SuperMap1.selection.Style.BrushStyle = 5 SuperMap1.selection.Style.BrushColor = RGB(115, 69, 140) SuperMap1.selection.Style.BrushBackColor = RGB(239, 150, 255) SuperMap1.selection.Style.BrushOpaqueRate = 50 ' 释放内存 objdatasource = Nothing objlayer = Nothing End Sub Private Sub Form_Unload(ByVal Cancel As Integer) SuperMap1.Disconnect() SuperWorkspace1.Close() End Sub 运行上述代码后会有如下的界面 : 7

12 SuperMap Objects 初级开发教程 图 2.4 打开地图运行结果窗口 2.4 第四步 : 地图浏览功能 利用 SuperMap Objects 控件, 可以很方便地进行地图的基本操作, 如放大 缩小 自由缩放 漫游 全幅显示 画点 画线等等 下面以放大 缩小 自由缩放 漫游 全幅显示功能为例予以说明 首先 : 在窗体中加入五个按钮, 设置如下的属性值 ( 其余属性取默认值即可 ): cmdpan cmdzoomin cmdzoomout cmdzoomfree cmdviewentire Name 漫游放大缩小自由缩放全幅显示 Caption 然后 : 在各个按钮的 Click 事件里加入以下代码, 即可实现以上功能 ; Private Sub cmdpan_click() ' 漫游 SuperMap1.Action = scapan End Sub Private Sub cmdviewentire_click() ' 全幅显示 SuperMap1.ViewEntire() End Sub Private Sub cmdzoomfree_click() ' 自由缩放 SuperMap1.Action = scazoomfree End Sub Private Sub cmdzoomin_click() ' 放大 SuperMap1.Action = scazoomin End Sub Private Sub cmdzoomout_click() ' 缩小 SuperMap1.Action = scazoomout End Sub 下图即为放大时的效果 8

13 第 2 章 Visual Basic 开发入门 2.5 第五步 : 地图到属性查询 图 2.5 地图浏览功能运行结果窗口 首先, 在窗体中加入一个按钮并设置它的属性值 : Name cmdselect Caption 图查属性 然后, 在其 Click 事件中加入以下程序代码 : Private Sub cmdselect_click() SuperMap1.Action = scaselect End Sub 最后, 在 Form1 窗体 SuperMap1 控件的 GeometrySelected 事件中加入如下代码 : Private Sub SuperMap1_GeometrySelected(ByVal nselectedgeometrycount As Long) Dim objrecordset As sorecordset ' 属性对象 Dim i As Integer ' 循环变量 Dim strname(40) As String ' 存储属性名 Dim strvalue(40) As String ' 存储属性值 Dim strmessage As String ' 显示所有信息 9

14 SuperMap Objects 初级开发教程 据 Set objrecordset = SuperMap1.Selection.ToRecordset(False) ' 提取所选对象的属性数 objrecordset.movefirst ' 移到第一条属性 For i = 1 To objrecordset.fieldcount strname(i - 1) = objrecordset.getfieldinfo(i).name ' 得到属性名 strvalue(i - 1) = objrecordset.getfieldvalue(i) ' 得到属性值 Next strmessage = "" For i = 1 To objrecordset.fieldcount strmessage = strmessage & strname(i) & ": " & strvalue(i) & Space(5) & vbcrlf Next MsgBox strmessage Set objrecordset = Nothing End Sub 下图是图查属性时的效果 : ' 释放内存 2.6 第六步 : 属性到地图查询 图 2.6 地图到属性查询运行结果窗口 1. 在窗体中加入一个按钮和一个编辑框 (TextBox), 并设置它们的属性值如下 : 10

15 第 2 章 Visual Basic 开发入门 Control Name Caption 按钮 cmdquerymap 属性查图 编辑框 txtexpression 在按钮的 Click 事件中加入以下程序代码 : Private Sub cmdquerymap_click() Dim objdtvector As sodatasetvector ' 矢量数据集变量 Dim objrecordset As sorecordset ' 属性数据集变量 Dim objselection As soselection ' 选择集变量 ' 取矢量数据集 : 取其中面数据集 "World" 进行查询 Set objdtvector = SuperWorkspace1.Datasources.Item("MyDataSource").Datasets ("World") If objdtvector Is Nothing Then MsgBox " 打开数据集错误 ", vbinformation Exit Sub End If ' 从数据集中查询出属性数据 (Query 方法只能用于 sodatasetvector 类对象 ) Set objrecordset = objdtvector.query(txtexpression.text, True) If objrecordset Is Nothing Then Exit Sub Else ' 把查到的数据加入到选择集中 ( 使其呈被选中状态 ) Set objselection = SuperMap1.Selection objselection.fromrecordset objrecordset ' 刷新地图窗口 SuperMap1.Refresh End If Set objdtvector = Nothing Set objrecordset = Nothing Set objselection = Nothing End Sub 3. 在编辑框中输入查询条件 :smid>50, 单击 属性查图 按钮, 得到如下结果 : 11

16 SuperMap Objects 初级开发教程 图 2.7 属性到地图查询运行结果窗口 12

17 第 3 章 Delphi 7 开发入门 3.1 第一步 : 创建一个新工程 :MyFirstSuperMap 1. 创建一个工作目录 C:\MyProject 2. 从帮助文档 GettingStarted.chm 的首页中点击链接下载数据文件 World..zip( 包含 World.smw 工作空间文件和 World.sdb World.sdd 文件 ) 到工作目 C:\MyProject 3. 启动 Delphi 4. 在工作目录 C:\MyProject 下创建一个新工程 : MyFirstSuperMap 5. 将窗体命名为 Tfrmmap 3.2 第二步 : 加入 SuperMap Objects 控件 1. 添加 ActiveX 控件到 Component Palette 的 ActiveX 栏上 找到 SuperMap 带的 SuperMap5.dpk 文件, 此文件通常在 SuperMap 安装目录的 Bin\InterfaceClass\ 目录下面, 在 delphi 中打开该文件, 将出现如下的对话框 图 3.1 打开 SuperMap5.dpk 文件窗口 如果您之前已经在 delphi 中加载过 SuperMap 的部分控件, 可以先移出以前加载的控件, 然后点击 Install 按钮 13

18 SuperMap Objects 初级开发教程 安装提示成功后,SuperMap Objects 全组件式系统在 Delphi 上的安装就完成了 安装成功在控件板上的 ActiveX 页上将出现如下图标 : 图 3.2 加载 SuperMap 控件后控件面板 第一次使用 SuperMap Objects 组件在 Delphi 中进行开发时, 需在菜单 Project/Options 中设置类型库文件搜索路径, 具体在 Options 的 Directories/conditionals 选项卡上 Search Path 中定位至 SuperMap Objects 的安装路径 :/Bin/InterfaceClass 下, 至此 SuperMap Objects 全组件式系统在 Delphi 上的安装就完成了 2. 将 SuperWorkspace 控件和 SuperMap 控件加到窗体上 3.3 第三步 : 打开地图 添加图层 在单元中加入如下代码 : procedure Tfrmmap.FormCreate(Sender: TObject); var stralias:string ; // 数据源别名 nenginetype:seenginetype; // 数据引擎类型 strdatasourcename:string; // 数据源绝对路径名 objdatasource:sodatasource; // 数据源对象, 指向打开的数据源 breadonly:boolean; // 数据源里的数据是否只读 objlayer:solayer; // 图层对象变量, 指向将要打开的图层 baddtohead:boolean; // 是否加到最上面 i:integer; // 循环变量 begin // 首先建立 supermap 与 SuperWorkspace 的联系 supermap1.connect(superworkspace1.handle); stralias:='mydatasource'; // 数据源别名可以任意给 // 建议取成数据源文件主名 nenginetype:=scesdbplus; //SuperMap 支持多种类型, 此处为 SDBPlus 类型 strdatasourcename:='c:\myproject\world.sdb'; breadonly:=false; // 不设为只读 // 打开数据源 objdatasource:=superworkspace1.opendatasource(strdatasourcename,stralias,nenginetype,breadonly); if objdatasource=nil then begin MessageBox(frmmap.handle, ' 打开数据源失败!', 'SuperMap Objects 5.2 开发入门教程 ', MB_OK); MessageBox(frmmap.handle,' 如果没有下载数据源, 请先下载示范数据 (world.sdb,world.sdd) 到当前程序目录下, 谢谢!', 'SuperMap Objects 5.2 开发入门教程 ', MB_OK); end 14

19 第 3 章 Delphi 开发入门 else begin // 将数据源中所有图层加到 Supermap 中 for i:=1 to objdatasource.datasets.count do begin baddtohead:=true; // 加到地图的最上层 objlayer:=supermap1.layers.adddataset(objdatasource.datasets.item[i], baddtohead); end; // 刷新地图 Supermap1.Refresh; // 修改选中对象风格 supermap1.selection.style.pencolor := RGB(231, 77, 0); supermap1.selection.style.penwidth := 1; supermap1.selection.style.penstyle := 1; supermap1.selection.style.brushstyle := 5; supermap1.selection.style.brushcolor := RGB(115, 69, 140); supermap1.selection.style.brushbackcolor := RGB(239, 150, 255); supermap1.selection.style.brushopaquerate := 50; end end; procedure Tfrmmap.FormClose(Sender: TObject; var Action: TCloseAction); begin // 关闭工作空间 SuperMap1.Disconnect; SuperMap1.Close; SuperWorkspace1.Close; SuperMap1.Free; SuperWorkspace1.Free; end; 运行以上代码后将出现如下界面 : 15

20 SuperMap Objects 初级开发教程 图 3.6 打开地图运行结果窗口 3.4 第四步 : 地图浏览功能 利用 SuperMap 控件, 可以很方便地进行地图的基本操作, 如放大 缩小 自由缩放 漫游 全幅显示 画点 画线等等 下面以放大 缩小 自由缩放 漫游 全幅显示功能为例予以说明 首先 : 在窗体中加入五个按钮, 设置如下的属性值 ( 其余属性取默认值即可 ): Name btpan btzoomin btzoomout btzoomfree btviewentire 16 Caption 漫游 放大 缩小 自由缩放 全幅显示 然后 : 在各个按钮的 Click 事件里加入以下代码, 即可实现以上功能 ;

21 第 3 章 Delphi 开发入门 procedure Tfrmmap.btViewEntireClick(Sender: TObject); begin // 查看全图 supermap1.viewentire; end; procedure Tfrmmap.btZoomInClick(Sender: TObject); begin // 放大 Supermap1.Action:=scaZoomIn; end; procedure Tfrmmap.btZoomOutClick(Sender: TObject); begin // 缩小 Supermap1.Action:=scaZoomOut; end; procedure Tfrmmap.btZoomFreeClick(Sender: TObject); begin // 自由缩放 Supermap1.Action:=scaZoomFree; end; procedure Tfrmmap.btPanClick(Sender: TObject); begin // 漫游 Supermap1.Action:=scaPan; end; 下图即为一放大时的效果 : 17

22 SuperMap Objects 初级开发教程 3.5 第五步 : 地图到属性查询 图 3.7 地图浏览功能运行结果窗口 首先, 在窗体中加入一个按钮并设置它的属性值 : Name btproperty 然后, 在其 Click 事件中加入以下程序代码 : Caption 图查属性 procedure Tfrmmap.btPropertyClick(Sender: TObject); begin // 查询地图属性 Supermap1.action:=scaSelect; end; 最后, 在 FrmMap 窗体 SuperMap1 控件的 GeometrySelected 事件中加入如下代码 : procedure Tfrmmap.SuperMap1GeometrySelected(Sender: TObject;nSelectedGeometryCount:Integer); var objrecordset:sorecordset; // 属性对象 i,j:integer; // 循环变量 strname:array[1..4] of string; // 存储属性名 strvalue:array[1..4] of String; // 存储属性值 strmessage:string; // 显示所有信息 begin // 先将选中对象转换为记录集对象 objrecordset:=supermap1.selection.torecordset(false); objrecordset.movefirst; // 读取字段数 j:=objrecordset.fieldcount; // 如果记录集多于 4 个字段, 则只读前四个字段 if j>4 then j:=4; // 只显示前四个字段 for i:=1 to j do begin strname[i]:=objrecordset.getfieldinfo(i).name; strvalue[i]:=objrecordset.getfieldvalue(i); end; strmessage:=''; for i:=1 to j do begin strmessage:=strmessage+strname[i]+ ':'+strvalue[i]+' '+ chr(vk_return); showmessage(strmessage); end; end; 下图是查询美国时的效果 : 18

23 第 3 章 Delphi 开发入门 图 3.8 地图到属性查询运行结果窗口 3.6 第六步 : 属性到地图查询 1. 在窗体中加入一个按钮和一个编辑框 (TextBox), 并设置它们的属性值如下 : Control Name Caption 按钮 btquerymap 属性查图 编辑框 editexpression 在按钮的 Click 事件中加入以下程序代码 : procedure Tfrmmap.btQueryMapClick(Sender: TObject); var objdatasource:sodatasource; // 数据源 objdtvector:sodatasetvector; // 矢量数据集变量 objrecordset:sorecordset; // 属性数据集变量 objselection:soselection; // 选择集变量 stroptions:widestring; objerrors:soerror; objgeo:sogeometry; begin 19

24 SuperMap Objects 初级开发教程 // 将 Supmap 控件的 Action 设为空 Supermap1.Action:=scaNull; if SuperWorkspace1.Datasources.count=0 then exit; // 取矢量数据集 objdatasource:=superworkspace1.datasources.item[1]; if objdatasource= nil then begin showmessage(' 数据源错误 '+objerrors.lasterrormsg ); Exit; end; objdtvector:=objdatasource.datasets.item[2] as sodatasetvector; if objdtvector=nil then begin showmessage(' 打开数据集错误 '+objerrors.lasterrormsg ); Exit end; try // 从数据集中查询出属性数据 objrecordset:=objdtvector.query(editexpression.text, true, nil, '') as sorecordset; if objrecordset=nil then exit else begin // 把查到的数据加入到选择集中 ( 使其呈被选中状态 ) objselection:=supermap1.selection; objselection.fromrecordset(objrecordset); // 刷新地图窗口 SuperMap1.Refresh ; exit; end; except MessageBox(frmmap.Handle,' 查询失败!',' 错误 ',MB_RETRYCANCEL+MB_ICONERROR) end; end; 3. 在编辑框中输入查询条件 :smid>50, 单击 " 属性查图 " 按钮, 得到如下结果 : 20

25 第 3 章 Delphi 开发入门 图 3.9 属性到地图查询运行结果窗口 21

26

27 第 4 章 Visual C 开发入门 4.1 第一步 : 创建 Visual C 工程 :MyFirstSuperMap 1. 创建一个工作目录 C:\Myproject; 2. 从帮助文档 GettingStarted.chm 的首页中点击链接下载数据文件 World..zip( 包含 World.smw 工作空间文件和 World.sdb World.sdd 文件 ) 到工作目 C:\MyProject; 3. 启动 Visual C 新建工程 执行 File -> New 菜单弹出下图窗口, 切换到 Projects 页面选项, 选择 MFC AppWizard(exe) Project 类型,Location 项使用路径定位功能定位到 C:\Myproject,Project name 项写入 MySuperMap, 点击 OK 按钮进入下一步 23

28 SuperMap Objects 初级开发教程 图 4.1 Visual C++ 新建工程窗口 4. 选择应用类型 新建工程的第二步是选择应用类型, 如下图所示选择第三项 Dialog based 然后点击 Finish 按钮完成新建 Project 图 4.2 选择工程类型窗口 4.2 第二步 : 加载 SuperMap Objects 控件 加载 SuperMap Objects 控件到工程中 (Project): 1. 用鼠标单击 Project 菜单下的 Add To Project 命令下的 Components and Controls Gallery 24

29 第 4 章 Visual C++ 开发入门 图 4.3 加载组件执行菜单 2. 用鼠标双击 Registered ActiveX Controls 目录, 选择 SuperMap 控件 如下图对话框 : 图 4.4 加载 SuperMap 组件窗口 25

30 SuperMap Objects 初级开发教程 3. 点击 Insert 按钮, 系统弹出消息框询问是否插入这个组件, 点击确定, 然后出现如下对话框, 单击 OK, 如下图 : 图 4.5 Inser 类这样 SuperMap Control 就被添加进工程里了, 同样的方法添加 SuperWorkspace Control 关闭选择控件的对话框, 这时 ToolBox 中就会多出图中所示两个控件 : 26

31 第 4 章 Visual C++ 开发入门 图 4.6 加载 SuperMap SuperWorkSpace 控件后 Control 面板 4. 通过上述步骤, 有些类仍然添加不进来, 需要通过以下步骤添加, 点击执行菜单 View -> ClassWizard..., 弹出菜单如下 : 图 4.7 添加类菜单点击菜单后, 出现如下对话框, 然后单击 Add Class 按钮 -> From a Type Library 27

32 SuperMap Objects 初级开发教程 图 4.8 添加类菜单然后选择安装目录下的 Bin\TypeLibrary\SuperMap.tlb 28

33 第 4 章 Visual C++ 开发入门 图 4.9 选择 SuperMap 类库现以下界面以后, 选中所有的类, 单击 OK 即可, 然后点击确定关闭 MFC ClassWizard 对话框 图 4.10 选择类窗口 4.3 第三步 : 打开地图 添加图层 1. 在当前对话框上 ( 如果当前对话框没有打开, 则可以从 VC 的工作空间管理器的 ResourceView 页中找到 ID 为 IDD_MYSUPERMAP_DIALOG 的对话框, 打开它 ) 添加 SuperWorkSpace 控件,ID 取名 IDC_SuperWorkspace, 添加 SuperMap 控件,ID 取名为 IDC_SuperMap 29

34 SuperMap Objects 初级开发教程 2. 在对话框上选中 SuperMap 控件, 单击右键, 选择 ClassWizard... ( 如下图 ) 图 4.11 ClassWizard 菜单在弹出的 MFC ClassWizard 对话框上选择 Member Variables 页, 双击 Control IDs: 列表框中的 IDC_SuperMap, 或者点击选中 IDC_SuperMap 后点击 Add Variable... 按钮, 进行变量关联, 如下图 : 30

35 第 4 章 Visual C++ 开发入门 图 4.12 添加 SuperMap 类点击 OK 按钮, 如下图可以在 MFC ClassWizard 对话框中看到增加的变量, 同样的方法, 为 IDC_SuperWorkspace 关联变量 m_superworkspace, 最后点击 OK, 关闭 MFC ClassWizard 31

36 SuperMap Objects 初级开发教程 图 4.13 WFC ClassWizard 3. 在 MySuperMapDlg.cpp 头部添加下列头文件 #include "sodatasource.h" #include "sodatasources.h" #include "sorecordset.h" #include "sofieldinfo.h" #include "sodatasets.h" #include "sodataset.h" #include "solayers.h" #include "solayer.h" #include "soselection.h" #include "sodatasetvector.h" #include "sostyle.h" 4. 在 CMySuperMapDlg 类的 OnInitDialog() 函数的 return TRUE; 前添加如下代码 : // 打开地图并显示 CsoDataSource objdatasource; CsoDatasets objdatasets; long Index; // 建立工作空间及数据源的联系 LPDISPATCH handle = m_superworkspace.gethandle (); m_supermap.connect(handle); handle->release(); 32

37 第 4 章 Visual C++ 开发入门 // 打开数据源,14 表示 SDB+ 引擎据 objdatasource=m_superworkspace.opendatasource("c:\\myproject\\world.sd b","world",14,false); if (! objdatasource) { MessageBox(" 打开数据源出错!"); exit(0); } objdatasets=objdatasource.getdatasets(); // 添加图层 for(index=1;index<=objdatasets.getcount();index++) { m_supermap.getlayers().adddataset(objdatasets.getitem(colevariant(inde x)),false); } // 刷新, 显示 m_supermap.refresh(); // 修改选中对象风格 CsoStyle objstyle = m_supermap.getselection().getstyle(); objstyle.setpencolor(rgb(231,77,0)); objstyle.setpenstyle(1); objstyle.setpenwidth(1); objstyle.setbrushstyle(5); objstyle.setbrushcolor(rgb(115,69,140)); objstyle.setbrushbackcolor(rgb(239,150,255)); objstyle.setbrushopaquerate(50); m_supermap.getselection().setstyle(objstyle); 运行代码后弹出如下界面 : 33

38 SuperMap Objects 初级开发教程 4.4 第四步 : 地图浏览功能 图 4.14 打开地图运行结果窗口 利用 SuperMap 控件, 可以很方便地进行地图的基本操作, 如放大 缩小 自由缩放 漫游 全幅显示 画点 画线等等 下面以放大 缩小 自由缩放 漫游 全幅显示功能为例予以说明 1. 在窗体中加入五个按钮, 设置如下的属性值 ( 其余属性取默认值即可 ): IDC_ButtonPan IDC_ButtonZoomIn ID 漫游 放大 Caption IDC_ButtonZoomOut IDC_ButtonZoomFree IDC_ButtonViewEntire 缩小 自由缩放 全幅显示 2. 在对话框中为这五个按钮添加响应处理函数, 并把下列代码分别添加到对应的各个处理函数中 : 34

39 第 4 章 Visual C++ 开发入门 void CMySuperMapDlg::OnButtonPan() { // 漫游 m_supermap.setaction(1); } void CMySuperMapDlg::OnButtonZoomIn() { // 放大 m_supermap.setaction (2); } void CMySuperMapDlg::OnButtonZoomOut() { // 缩小 m_supermap.setaction (3); } void CMySuperMapDlg::OnButtonZoomFree() { // 自由缩放 m_supermap.setaction(4); } void CMySuperMapDlg::OnButtonViewEntire() { // 全幅显示 m_supermap.viewentire(); } 下图为地图放大时的效果 : 35

40 SuperMap Objects 初级开发教程 4.5 第五步 : 地图到属性查询 图 4.15 地图浏览功能运行结果窗口 1. 在窗体中加入一个按钮并设置它的属性值 : ID IDC_ButtonQueryProperties 图查属性 Caption 2. 在对话框中添加该按钮的响应处理函数, 将下列代码添加到函数 : // 图查属性 m_supermap.setaction(5); 3. 通过 MFC ClassWizard 在对话框中添加 SuperMap 控件 GeometrySelected 消息的处理函数 OnGeometrySelectedSuperMap(long nselectedgeometrycount), 在函数中加入如下代码 : CsoRecordset Record; CsoFieldInfo Info; long Index; COleVariant var; CString strname; CString strvalue; CString strmsg; // 转化为属性集 Record=m_SuperMap.GetSelection().ToRecordset(false); strmsg=""; // 获得属性名与属性值 for(index=1;index<=record.getfieldcount();index++) { Info=Record.GetFieldInfo(COleVariant(Index)); strname=info.getname(); var=record.getfieldvalue(colevariant(index)); var.changetype(vt_bstr); strvalue=var.bstrval; strmsg =strmsg + strname + ":" + strvalue + "\n"; } // 显示属性 MessageBox(strMsg); 下图是图查属性时的效果 : 36

41 第 4 章 Visual C++ 开发入门 4.6 第六步 : 属性到地图查询 图 4.16 地图到属性查询运行结果窗口 1. 在窗体中加入一个按钮并设置它的属性值 : Controls ID Caption Button IDC_ButtonQueryMaps 属性查图 EditBox IDC_Edit 在对话框中添加 ' IDC_ButtonQueryMaps 的响应处理函数, 把下列代码添加到处理函数中, 再使用 MFC ClassWizard 将 IDC_Edit 关联为字符串类型变量 m_querycondition : // 属性查图 UpdateData(true); CsoDatasetVector objdtvector; // 矢量数据集变量 CsoDataset objdt; CsoRecordset objrecordset; // 属性数据集变量 CsoDatasets objdtsets; CsoDataSource objdatasource; IDispatch *ar = NULL; char *dd = NULL; 37

42 SuperMap Objects 初级开发教程 // 取矢量数据集 objdatasource = m_superworkspace.getdatasources().getitem(colevariant(1l)); objdtsets = objdatasource.getdatasets(); objdt = objdtsets.getitem(colevariant(2l)); // 第二个参数为 false, 防止 objdt 被释放掉 objdtvector.attachdispatch(objdt,false); // 从数据集中查询出属性数据 objrecordset = objdtvector.query(m_querycondition,true,ar,dd); // 把查到的数据加入到选择集中 ( 使其呈被选中状态 ) m_supermap.getselection ().FromRecordset(objRecordset); // 刷新地图窗口并关闭 Recordset objrecordset.close(); m_supermap.refresh(); 3. 运行程序后, 在编辑框中输入查询条件 :SmID>50, 单击 属性查图 按钮, 效果如下 : 图 4.17 属性到地图查询运行结果窗口 38

43 第 5 章 Visual Basic.NET 2003 开发入门 5.1 第一步 : 创建一个新工程 :MyFirstSuperMap 1. 创建一个工作目录 C:\MyProject 2. 从帮助文档 GettingStarted.chm 的首页中点击链接下载数据文件 World..zip( 包含 World.smw 工作空间文件和 World.sdb World.sdd 文件 ) 到工作目 C:\MyProject 3. 启动 Visual Visual Studio.NET 4. 在工作目录 C:\MyProject 下创建一个新的 Visual Basic 工程 : MySuperMap 5.2 第二步 : 加入 SuperMap Objects 控件 1. 添加 SuperMap Objects 控件到 ToolBox( 工具箱 ): 在 ToolBox( 工具箱 ) 上单击鼠标右键, 点击 "Add Tab", 命名为 SuperMap 在 ToolBox( 工具箱 ) 上单击鼠标右键, 点击 "Add/Remove Items...", 出现如下对话框 : 39

44 SuperMap Objects 初级开发教程 图 5.1 Visual Studio.NET 加载控件窗口 在 COM Components 选项卡上选中 SuperMap Control 和 SuperWorkspace Control ( 前面的框内出现一个勾即为选中 ), 点击确定 工具箱上就会多出如下图所示的两个控件 : 40

45 第 5 章 Visual Basic.Net 开发入门 图 5.2 加载 SuperMap 控件后控件面板 2. 在 COM Components 选项卡上选中 SuperMap Control 和 SuperWorkspace Control ( 前面的框内出现一个勾即为选中 ), 点击确定 工具箱上就会多出如下图所示的两个控件 : 5.3 第三步 : 打开地图 添加图层 在窗体中加入以下代码 : Private Sub frmmap_load(byval eventsender As System.Object, ByVal eventargs As System.EventArgs) Handles MyBase.Load ' 建立 SuperWorkspace 与 SuperMap 之间的联系 ' 在 Visual Basic.NET 中,Handle 是系统属性名, 因此 SuperWorkspace 原有的 Handle 属性被更名为 CtlHandle AxSuperMap1.Connect(AxSuperWorkspace1.CtlHandle) Dim stralias As String ' 数据源别名 Dim nenginetype As SuperMapLib.seEngineType ' 数据引擎类型 Dim strdatasourcename As String ' 数据源绝对路径名 Dim objdatasource As SuperMapLib.soDataSource ' 数据源对象, 指向打开的数据源 Dim breadonly As Boolean ' 数据源里的数据是否只读 Dim objlayer As SuperMapLib.soLayer ' 图层对象变量, 指向将要打开的图层 Dim baddtohead As Boolean ' 是否加到最上面 Dim i As Short ' 循环变量 stralias = "MyDataSource" ' 上别名可以任意给, 建议取成和数据源文件主名 41

46 SuperMap Objects 初级开发教程 nenginetype = SuperMapLib.seEngineType.sceSDBPlus 'SuperMap 支持多种类型, 此处为 SDBPlus 类型 strdatasourcename = "c:\myproject\world.sdb" breadonly = False ' 不设为只读 ' 打开数据源 objdatasource = AxSuperWorkspace1.OpenDataSource(strDataSourceName, stralias, nenginetype, breadonly) If objdatasource Is Nothing Then MsgBox(" 打开数据源失败!", MsgBoxStyle.Information) MsgBox(" 请将数据源文件 (world.sdb,world.sdd) 下载到 c:\myproject 目录下, 再运行程序, 谢谢 ") Else For i = 1 To objdatasource.datasets.count ' 把数据源中的所有图层加入到 SuperMap 中 baddtohead = True objlayer = AxSuperMap1.Layers.AddDataset(objDataSource.Datasets.Item(i), baddtohead) Next End If ' 刷新地图窗口 ' 在 Visual Basic.NET 中,Handle 是系统属性名, 因此 SuperWorkspace 原有的 Handle 属性被更名为 CtlHandle AxSuperMap1.CtlRefresh() ' 修改选中对象风格 AxSuperMap1.selection.Style.PenColor = System.Convert.ToUInt32(RGB(231, 77, 0)) AxSuperMap1.selection.Style.PenWidth = 1 AxSuperMap1.selection.Style.PenStyle = 1 AxSuperMap1.selection.Style.BrushStyle = 5 AxSuperMap1.selection.Style.BrushColor = System.Convert.ToUInt32(RGB(115, 69, 140)) AxSuperMap1.selection.Style.BrushBackColor = System.Convert.ToUInt32(RGB(239, 150, 255)) AxSuperMap1.selection.Style.BrushOpaqueRate = 50 ' 释放内存 objdatasource = Nothing objlayer = Nothing End Sub Private Sub frmmap_closed(byval eventsender As System.Object, ByVal eventargs As System.EventArgs) Handles MyBase.Closed AxSuperMap1.Disconnect() AxSuperWorkspace1.Close() End Sub 运行上述代码后会有如下的界面 : 42

47 第 5 章 Visual Basic.Net 开发入门 图 5.3 打开地图运行结果窗口 5.4 第四步 : 地图浏览功能 利用 SuperMap 控件, 可以很方便地进行地图的基本操作, 如放大 缩小 自由缩放 漫游 全幅显示 画点 画线等等 下面以放大 缩小 自由缩放 漫游 全幅显示功能为例予以说明 首先 : 在窗体中加入五个按钮, 设置如下的属性值 ( 其余属性取默认值即可 ): cmdpan cmdzoomin cmdzoomout cmdzoomfree cmdviewentire Name 漫游放大缩小自由缩放全幅显示 Caption 43

48 SuperMap Objects 初级开发教程 然后 : 在各个按钮的 Click 事件里加入以下代码, 即可实现以上功能 ; Private Sub cmdviewentire_click(byval eventsender As System.Object, ByVal eventargs As System.EventArgs) Handles cmdviewentire.click SuperMap1.ViewEntire() ' 全幅显示 End Sub Private Sub cmdzoomfree_click(byval eventsender As System.Object, ByVal eventargs As System.EventArgs) Handles cmdzoomfree.click SuperMap1.Action = SuperMapLib.seAction.scaZoomFree ' 自由缩放 End Sub Private Sub cmdzoomin_click(byval eventsender As System.Object, ByVal eventargs As System.EventArgs) Handles cmdzoomin.click SuperMap1.Action = SuperMapLib.seAction.scaZoomIn ' 放大 End Sub Private Sub cmdzoomout_click(byval eventsender As System.Object, ByVal eventargs As System.EventArgs) Handles cmdzoomout.click SuperMap1.Action = SuperMapLib.seAction.scaZoomOut ' 缩小 End Sub Private Sub cmdpan_click(byval eventsender As System.Object, ByVal eventargs As System.EventArgs) Handles cmdpan.click SuperMap1.Action = SuperMapLib.seAction.scaPan ' 漫游 End Sub 下图即为一放大时的效果 44

49 第 5 章 Visual Basic.Net 开发入门 5.5 第五步 : 地图到属性查询 图 5.4 地图浏览功能运行结果窗口 1. 在窗体中加入一个按钮并设置它的属性值 : cmdselect Name 2. 在其 Click 事件中加入以下程序代码 : 图查属性 Text Private Sub cmdselect_click(byval eventsender As System.Object, ByVal eventargs As System.EventArgs) SuperMap1.Action = SuperMapLib.seAction.scaSelect ' 选择 End Sub 3. 最后, 在 frmmap 窗体 SuperMap1 控件的 GeometrySelected 事件中加入如下代码 : Private Sub SuperMap1_GeometrySelected(ByVal eventsender As System.Object, ByVal eventargs As AxSuperMapLib._DSuperMapEvents_GeometrySelectedEvent) Handles SuperMap1.GeometrySelected Dim objrecordset As SuperMapLib.soRecordset ' 属性对象 45

50 SuperMap Objects 初级开发教程 Dim i As Short ' 循环变量 Dim strname(4) As String ' 存储属性名 Dim strvalue(4) As String ' 存储属性值 Dim strmessage As String ' 显示所有信息 objrecordset = AxSuperMap1.selection.ToRecordset(False) ' 提取所选对象的属性数据 objrecordset.movefirst() ' 移到第一条属性 For i = 1 To objrecordset.fieldcount strname(i - 1) = objrecordset.getfieldinfo(i).name ' 得到属性名 strvalue(i - 1) = objrecordset.getfieldvalue(i) ' 得到属性值 Next strmessage = "" For i = 0 To objrecordset.fieldcount - 1 strmessage = strmessage & strname(i) & ": " & strvalue(i) & Space(5) & vbcrlf Next MsgBox(strMessage) objrecordset = Nothing ' 释放内存 End Sub 下图是图查属性时的效果 : 图 5.5 地图到属性查询运行结果窗口 46

51 5.6 第六步 : 属性到地图查询 第 5 章 Visual Basic.Net 开发入门 1. 在窗体中加入一个按钮和一个编辑框 (TextBox), 并设置它们的属性值如下 : 控件 Name Caption 按钮 cmdquerymap 属性查图 编辑框 txtexpression 在按钮的 Click 事件中加入以下程序代码 : Private Sub cmdquerymap_click(byval eventsender As System.Object, ByVal eventargs As System.EventArgs) Dim objdtvector As SuperMapLib.soDatasetVector ' 矢量数据集变量 Dim objrecordset As SuperMapLib.soRecordset ' 属性数据集变量 Dim objselection As SuperMapLib.soSelection ' 选择集变量 ' 取矢量数据集 : 取其中面数据集 "World" 进行查询 If AxSuperWorkspace1.Datasources.Count = 0 Then Exit Sub End If objdtvector = AxSuperWorkspace1.Datasources.Item("MyDataSource").Datasets("World") If objdtvector Is Nothing Then MsgBox(" 打开数据集错误 ", MsgBoxStyle.Information) Exit Sub End If ' 从数据集中查询出属性数据 (Query 方法只能用于 sodatasetvector 类对象 ) objrecordset = objdtvector.query(txtexpression.text, True) If objrecordset Is Nothing Then Exit Sub Else ' 把查到的数据加入到选择集中 ( 使其呈被选中状态 ) objselection = AxSuperMap1.selection objselection.fromrecordset(objrecordset) ' 刷新地图窗口 AxSuperMap1.CtlRefresh() End If objdtvector = Nothing objrecordset = Nothing objselection = Nothing End Sub 3. 在编辑框中输入查询条件 :smid>50, 单击 " 属性查图 " 按钮, 得到如下结果 : 47

52 SuperMap Objects 初级开发教程 图 5.6 属性到地图查询运行结果窗口 48

53 第 6 章 Visual C#.NET 2003 开发入门 6.1 第一步 : 创建一个新工程 :MyFirstSuperMap 1. 创建一个工作目录 C:\Myproject 2. 从帮助文档 GettingStarted.chm 的首页中点击链接下载数据文件 World..zip( 包含 World.smw 工作空间文件和 World.sdb World.sdd 文件 ) 到工作目 C:\MyProject 3. 启动 Visual Studio.NET 4. 在工作目录 C:\Myproject 下创建一个新应用 : MyFirstSuperMap 图 6.1 创建 Visual C#.NET 工程窗口 6.2 第二步 : 加载 SuperMap Objects 控件 添加 SuperMap Objects 控件到 ToolBox( 工具箱 ): 在 ToolBox( 工具箱 ) 上单击鼠标右键, 点击 "Add Tab", 键入 SuperMap 作为名字 49

54 SuperMap Objects 初级开发教程 在 ToolBox( 工具箱 ) 上单击鼠标右键, 点击 " Add/Remove Items... ", 出现如下对话框 : 图 6.2 Visual Studio.NET 加载控件窗口 选中 SuperMap Control 和 SuperWorkspace Control ( 前面的框内出现一个钩即为选中 ), 点击确定 ToolBox 中就会多出图中所示两个控件 : 50

55 第 7 章 Visual C#.Net 开发入门 图 6.3 加载 SuperMap 控件后控件面板 6.3 第三步 : 打开地图 添加图层 1. 把窗体命名为 frmmain, 把这 SuperWorkSpace Control 添加到窗体中命名为 SuperWorkspace1, 把这 SuperMap Control 添加到窗体中命名为 SuperMap1, 如下图所示 51

56 SuperMap Objects 初级开发教程 图 6.4 添加 SuperMap 控件到 Form 2. 在 frmmain 下的 frmmain_load 插入如下代码 : private void frmmain_load(object sender, System.EventArgs e) { SuperMap1.Connect(SuperWorkspace1.CtlHandle); // 建立 SuperWorkspace 与 SuperMap 之间的联系 String stralias; // 数据源别名 SuperMapLib.seEngineType nenginetype; // 数据引擎类型 String strdatasourcename; // 数据源绝对路径名 SuperMapLib.soDataSource objdatasource; // 数据源对象, 指向打开的数据源 bool breadonly; // 数据源里的数据是否只读 bool baddtohead; // 是否加到最上面 int i; // 循环变量 stralias = "MyDataSource"; // 别名可以任意给, 建议取成和数据源文件主名 nenginetype = SuperMapLib.seEngineType.sceSDBPlus; //SuperMap 支持多种类型, 此处为 SDBPlus 类型 strdatasourcename = "C:\\MyProject\\World.sdb"; breadonly = false ; // 不设为只读 // 打开数据源 52

57 第 7 章 Visual C#.Net 开发入门 objdatasource = SuperWorkspace1.OpenDataSource(strDataSourceName, stralias, nenginetype, breadonly); if (objdatasource == null) { MessageBox.Show( " 请将数据源文件 (world.sdb,world.sdd) 下载到 C:\\MyProject\\World.sdb 目录, 再运行程序, 谢谢 "," 打开数据源失败 "); return ; } else { // 把数据源中的所有图层加入到 SuperMap 中 for(i=1;i<=objdatasource.datasets.count;i++) { baddtohead = true; SuperMap1.Layers.AddDataset(objDataSource.Datasets[i], baddtohead); } } SuperMap1.CtlRefresh(); // 刷新地图窗口 // 修改选中对象风格 SuperMap1.selection.Style.PenColor = System.Convert.ToUInt32(System.Drawing.ColorTranslator.ToOle(Color.Fro margb(231, 77, 0))); SuperMap1.selection.Style.PenWidth = 1; SuperMap1.selection.Style.PenStyle = 1; SuperMap1.selection.Style.BrushStyle = 5; SuperMap1.selection.Style.BrushColor = System.Convert.ToUInt32(System.Drawing.ColorTranslator.ToOle(Color.Fro margb(115, 69, 140))); SuperMap1.selection.Style.BrushBackColor = System.Convert.ToUInt32(System.Drawing.ColorTranslator.ToOle(Color.Fro margb(239, 150, 255))); SuperMap1.selection.Style.BrushOpaqueRate = 50; objdatasource = null; } 在 frmmain 下的 frmmain_closing 插入如下代码 : private void frmmain_closing(object sender, System.ComponentModel.CancelEventArgs e) { // 关闭窗口及工作空间, 注意别乱了顺序 SuperMap1.Close(); SuperMap1.Disconnect(); SuperWorkspace1.Close(); } 运行代码后弹出如下界面 : 53

58 SuperMap Objects 初级开发教程 图 6.5 打开地图运行结果窗口 6.4 第四步 : 地图浏览功能 利用 SuperMap 控件, 可以很方便地进行地图的基本操作, 如放大 缩小 自由缩放 漫游 全幅显示 画点 画线等等 下面以放大 缩小 自由缩放 漫游 全幅显示功能为例予以说明 首先 : 在窗体中加入五个按钮, 设置如下的属性值 ( 其余属性取默认值即可 ): cmdpan cmdzoomin cmdzoomout cmdzoomfree cmdviewentire Name 漫游放大缩小自由缩放全幅显示 Caption 然后 : 在各个按钮的 Click 事件里加入以下代码, 即可实现以上功能 ; 54

59 第 7 章 Visual C#.Net 开发入门 private void cmdzoomin_click(object sender, System.EventArgs e) { this.supermap1.action=supermaplib.seaction.scazoomin; // 放大 } private void cmdzoomout_click(object sender, System.EventArgs e) { this.supermap1.action = SuperMapLib.seAction.scaZoomOut; // 缩小 } private void cmdviewentire_click(object sender, System.EventArgs e) { this.supermap1.viewentire(); // 全幅显示 } private void cmdpan_click(object sender, System.EventArgs e) { this.supermap1.action = SuperMapLib.seAction.scaPan; // 漫游 } private void cmdpan_click(object sender, System.EventArgs e) { this.supermap1.action = SuperMapLib.seAction.scaZoomFree; // 自由缩放 } 下图为地图放大时的效果 : 55

60 SuperMap Objects 初级开发教程 图 6.6 地图浏览功能运行结果窗口 6.5 第五步 : 地图到属性查询 1. 在窗体中加入一个按钮并设置它的属性值 : cmdqueryproperties ID 图查属性 2. 把按钮中要响应的代码加入到 cmdqueryproperties_click(object sender, System.EventArgs e) 中, 即可实现以上功能 ; private void cmdqueryproperties_click(object sender, System.EventArgs e) { this.axsupermap1.action=supermaplib.seaction.scaselect; // 图查属性 } 在 SuperMap 控件的 GeometrySelected(object sender, AxSuperMapLib._DSuperMapEvents_GeometrySelectedEvent e) 加入如下代码 : private void axsupermap1_geometryselected(object sender, AxSuperMapLib._DSuperMapEvents_GeometrySelectedEvent e) { SuperMapLib.soSelection objselection; SuperMapLib.soRecordset objrd; objselection=this.axsupermap1.selection; objrd=objselection.torecordset(false); // 提取所选对象的属性数据 string str=""; for (int i=1 ;i<=objrd.fieldcount;i++) { str+=objrd.getfieldinfo(i).name ; // 得到属性名 str+=":"+objrd.getfieldvalue(i).tostring()+"\n"; // 得到属性值 } MessageBox.Show(str," 查找的纪录为 :"); objselection=null; objrd=null; } 下图是图查属性时的效果 : Text 56

61 第 7 章 Visual C#.Net 开发入门 6.6 第六步 : 属性到地图查询 图 6.7 地图到属性查询运行结果窗口 1. 在窗体中加入一个按钮并设置它的属性值 : 控件 ID Caption 按钮 cmdquerymaps 属性查图 编辑框 textbox 把按钮响应的代码加入到 cmdquerymaps_click(object sender, System.EventArgs e), 即可实现以上功能 ; { private void cmdquerymaps_click(object sender, System.EventArgs e) if (this.textbox1.text=="") { MessageBox.Show(" 查找信息不能为空 "); return; } SuperMapLib.soDatasetVector objdtv; // 矢量数据集变量 SuperMapLib.soDataset objdt; SuperMapLib.soSelection objselection; // 选择集变量 57

62 SuperMap Objects 初级开发教程 SuperMapLib.soRecordset objrd; // 属性数据集变量 // 取矢量数据集 : 取其中面数据集 "World" 进行查询 objdt= this.supermap1.layers["world@world"].dataset; objdtv=(supermaplib.sodatasetvector)objdt; // 从数据集中查询出属性数据 (Query 方法只能用于 sodatasetvector 类对象 ) objrd=objdtv.query(this.textbox1.text,true,null,""); // 把查到的数据加入到选择集中 ( 使其呈被选中状态 ) objselection= this.supermap1.selection; objselection.fromrecordset(objrd); // 刷新地图窗口 this.supermap1.ctlrefresh(); } objrd= null; objdt= null; objdtv= null; objselection= null; 3. 在编辑框中输入查询条件 :SmID>50, 单击 属性查图 按钮, 得到如下结果 : 图 6.8 属性到地图查询运行结果窗口 58

63 第 7 章 附录 7.1 如何注册 SuperMap Objects 运行许可? 如果您购买了 SuperMap Objects 的运行许可, 您将得到一组运行许可序列号 SuperWorkspace SuperAnalyst Super3D SuperLayout 和 SuperTopo 控件以及 SDX+ 需要运行许可序列号,SuperMap SuperLegend SuperGridView SuperWkspManager 和 SmxLockInfo 不需要 在您开发的系统中, 需要使用这些序列号注册运行许可 注册的方式是分别调用相应控件的 RegisterForRuntime 方法 以 SuperWorkspace 控件为例, 在第一次打开数据之前, 使用控件的 RegisterForRuntime 方法 (Method) 按如下方式注册, 否则, 运行时将会弹出 About 对话框, 并将在地图窗口中显示提示注册信息 : RegisterForRuntime ( 用户名 单位名 产品序列号 ) 例如在 VB 工程中可以在 Form_Load 事件中注册, 以入门教程为例 : Private Sub Form_Load() If Not SuperWorkspace1.RegisterForRuntime("", "", "") Then End If MsgBox "SuperMap Objects 注册失败, 请确认序列号是否正确!" SuperMap1.Connect SuperWorkspace1.Handle SuperWorkspace1.OpenDataSource App.Path & "\..\data\world\world.sdb", "world", scesdb, True SuperMap1.Layers.AddDataset SuperWorkspace1.Datasources(1).Datasets ("World"), True SuperMap1.ViewEntire End Sub 其它控件也应在第一次使用该控件之前调用 RegisterForRuntime 方法进行注册 7.2 如何随您的应用系统分发 SuperMap Objects? 发布模式 SuperMap Objects 是一个面向二次开发的 GIS 平台, 您可以基于 SuperMap Objects 开发出适用于不同领域 功能强大的应用系统 通常情况下需要将应用系统以及附属文件制作成一个安装包, 便于最终用户的使用 那么如何发布基于 SuperMap objects 开发的软件呢? 通常有两种模式, 一种为简便模式, 另一种为高级模式 下面将向您介绍这两种模式 59

64 SuperMap Objects 初级开发教程 1 简单模式 简便模式即只将应用系统单独打包, 不包括 SuperMap Objects 运行库文件 用户安装时先安装 SuperMap Objects 运行版, 然后再安装应用系统 发布应用系统只能提供给用户运行版安装程序, 不能提供开发版安装程序 2 高级模式 高级模式即把 SuperMap Objects 的运行支持文件与应用系统一起打包成安装程序, 用户只需要安装一次, 如果您的系统是一个可以单独销售的产品, 建议采用这种方式 采用高级模式发布基于 SuperMap Objects 开发的软件时, 必须注意 : 有些文件属于 SuperMap Objects 开发版专有, 不能发布给您的用户使用, 下面提供了可以发布的文件清单和不可以发布的文件清单 可发布文件清单 SuperMap Objects 运行库包括三种类型文件 : MFC 运行库 DLL 文件 SuperMap Objects 支持库 DLL 文件和 SuperMap Objects OCX 控件文件 通常把第一组文件安装到 Winodws 系统目录下, 后面两组文件需要在安装到同一个目录下, 为避免版本冲突, 最好不要将后面两组文件安装到 Windows 系统目录 1 MFC 支持库 DLL 文件 : SuperMap Objects 基于 MicroSoft 的 MFC 开发, 运行时需要 MFC 的运行库文件, 这些文件必须安装到 Windows 的系统目录 在 Windows NT 4.0 及 Windows 2000 以上系统中安装到 System32 目录 MFC 的运行库文件包括 : msvcrt.dll msvcp60.dll mfc42.dll 2 SuperMap Objects 支持库 DLL 文件 : SuperMap Objects 的支持库文件包括 30 多个动态连接库 为了避免版本冲突, 这些文件最好不要安装到 Windows 的系统目录下 DiskSerial.dll iconv.dll libexpat.dll lt_appsupport.dll lt_common.dll lt_messagetext.dll lt_meta.dll lt_trans.dll 60

65 第 8 章附录 lt_utils.dll lt_xtrans.dll mrsid32.dll mrsidd.dll NCScnet.dll NCSEcw.dll NCSEcwC.dll NCSUtil.dll sx32w.dll SmAlib50.dll SmCSF50.dll SmCtl50.dll SmDTM50.DLL SmeDgn50.dll SmEdit50.dll SmeImg50.dll SmeMemory.dll SmElem50.dll SmEng50.dll SmeSDB50.dll SmeSDBPlus50.dll SmFPS50.dll SmFSL50.DLL SmGrid50.dll SmImg50.dll SmLogRes.dll SmLsl50.dll Smlyt50.dll SmOCI.dll SmOdbc50.dll SmPmp50.dll SmPrj50.dll SmScn50.dll SmSym50.dll SmTopo50.dll SmWks50.dll 3 OCX 文件 SuperMap Objects 包括如下几个 OCX 文件 同样, 我们建议您不必安装到系统目录 这些文件安装之后需要进行注册, 您可以使用安装工具 ( 如 InstallShield) 提供的 OCX 控件注册功能, 也可以手工注册 ( 如使用 Windows 的 RegSvr32.exe) SuperMap Objects 安装包中还提供了一个专门的注册工具 Register.exe, 直接执行这个文件, 就可以自动注册同一目录下的所有 SuperMap Objects 控件 后面将详细介绍注册 OCX 文件的技巧和注意事项 61

66 SuperMap Objects 初级开发教程 SuperMap.ocx SuperLayout.ocx SuperLegend.ocx SuperAnalyst.ocx Super3D.ocx SuperTopo.ocx SuperGridView.ocx SuperWkspManager.ocx SuperLockInfo.ocx 如果使用了 SuperMap Objects 组件的数据库引擎, 则应该增加相应的数据引擎文件, 所有的数据引擎文件如下 : SmeAcad50.sdx SmeDB2Plus50.sdx SmeKingBase50.sdx SmeODm50.sdx SmeOrcPlus50.sdx SmeOSbs50.sdx SmeOSP50.sdx SmeOSqlPlus.sdx SmeSQL50.sdx 不可发布的文件清单 发布应用系统时, 有些文件属于 SuperMap Objects 开发版专有, 不能发布给您的用户使用, 如果您的用户需要使用 SuperMap Objects 进行开发, 可以向 SuperMap Objects 在当地的代理商联系 不能发布给最终用户的 SuperMap Objects 文件包括 ( 但不限于 ): 1 开发许可文件 (*.lic) SuperLayout.lic Super3D.lic SuperLegend.lic SuperAnalyst.lic SuperMap.lic SuperTopo.lic SuperGridView.lic SuperWkspManager.lic 以及 SuperMap Objects 安装包携带的扩展名为.lic 的其他文件 2 类型库文件 (VC 开发使用, 扩展名 :*.tlb) SuperLayout.tlb Super3D.tlb SuperLegend.tlb SuperAnalyst.tlb 62

67 第 8 章附录 SuperMap.tlb SuperTopo.tlb SuperGridView.tlb SuperWkspManager.tlb 以及 SuperMapObjects 安装包携带的扩展名为.tlb 的其他文件 3 帮助文档 SmProRef.chm SmStart.chm SmoTech.chm smsamlib.chm 以及 SuperMap Objects 安装包携带的扩展名为.chm 的其他文件 注册 SuperMap Objects 组件 首先, 把 SuperMap Objects 提供的 RegisterSuperMap.exe 文件打包到 Install Shield 中, 并且与 SuperMap Objects 的一系列 OCX 文件安装在同一个目录下 设置 OCX 文件所在的文件组的 self-registered 属性为 FALSE, 因为您准备自行解决注册问题 当然, 别忘记把 MFC 的运行库文件打包了, 并且把这三个文件所在文件组的 Potentially Locked 属性设置为 TRUE, 否则不能正常安装 接着, 在 Install Shield (6.22 以上 ) Script 中定义并实现如下函数 : (1) 定义 ExecuteAfterRebootOrAtEnd() 函数, 定义之后需在头文件中声明 ;( 注意区分大小写 ) function ExecuteAfterRebootOrAtEnd() STRING strtempfile; begin strtempfile = TARGETDIR ^ "\\Bin\\RegisterSuperMap.exe"; // 指定自动注册程序的目标路径, 请根据实际安装目录进行相应的修改 LongPathToQuote ( strtempfile, TRUE ); LaunchAppAndWait ( strtempfile, "", WAIT ); end; (2) 响应 OnEnd(), 并添加如下代码 : function OnEnd() begin if (BATCH_INSTALL) then //do nbothing else ExecuteAfterRebootOrAtEnd(); endif; end; (3) 响应 OnRebooted() 函数并添加如下代码 : 63

68 SuperMap Objects 初级开发教程 function OnRebooted() begin ExecuteAfterRebootOrAtEnd(); end; ( 完 ) 64

Visual Basic D 3D

Visual Basic D 3D Visual Basic 2008 2D 3D 6-1 6-1 - 6-2 - 06 6-2 STEP 1 5-2 (1) STEP 2 5-3 (2) - 6-3 - Visual Basic 2008 2D 3D STEP 3 User1 6-4 (3) STEP 4 User1 6-5 (4) - 6-4 - 06 STEP 5 6-6 (5) 6-3 6-3-1 (LoginForm) PictureBox1

More information

Microsoft Word - CX1000-HMI_程序开发_PLC通讯

Microsoft Word - CX1000-HMI_程序开发_PLC通讯 用 VB.Net 开发 CX1000 的 HMI 第二部分和 TwinCAT PLC 通讯 一 TwinCAT 动态库 TwinCAT.Ads.dll The TwinCAT.Ads.dll 是一个.NET 类库, 它提供和 ADS 设备通讯的类 如果 TwinCAT PLC 运行在 IPC 上, 则需要添加的类库是路径 \TwinCAT\ADS Api\.NET\v1.1.4322 下的 TwinCAT.Ads.dll

More information

INTRODUCTION TO COM.DOC

INTRODUCTION TO COM.DOC How About COM & ActiveX Control With Visual C++ 6.0 Author: Curtis CHOU mahler@ms16.hinet.net This document can be freely release and distribute without modify. ACTIVEX CONTROLS... 3 ACTIVEX... 3 MFC ACTIVEX

More information

概述

概述 OPC Version 1.6 build 0910 KOSRDK Knight OPC Server Rapid Development Toolkits Knight Workgroup, eehoo Technology 2002-9 OPC 1...4 2 API...5 2.1...5 2.2...5 2.2.1 KOS_Init...5 2.2.2 KOS_InitB...5 2.2.3

More information

基于ECO的UML模型驱动的数据库应用开发1.doc

基于ECO的UML模型驱动的数据库应用开发1.doc ECO UML () Object RDBMS Mapping.Net Framework Java C# RAD DataSetOleDbConnection DataGrod RAD Client/Server RAD RAD DataReader["Spell"].ToString() AObj.XXX bug sql UML OR Mapping RAD Lazy load round trip

More information

2 WF 1 T I P WF WF WF WF WF WF WF WF 2.1 WF WF WF WF WF WF

2 WF 1 T I P WF WF WF WF WF WF WF WF 2.1 WF WF WF WF WF WF Chapter 2 WF 2.1 WF 2.2 2. XAML 2. 2 WF 1 T I P WF WF WF WF WF WF WF WF 2.1 WF WF WF WF WF WF WF WF WF WF EDI API WF Visual Studio Designer 1 2.1 WF Windows Workflow Foundation 2 WF 1 WF Domain-Specific

More information

用户大会 论文集2.2.doc

用户大会 论文集2.2.doc MagGis MapGis GIS MagGis API DLL MapGis VC++ VB BC++ Delphi., Windows API MapGis VC++V Delphi Delphi Delphi MapGis Delphi Delphi Windows Delphi Delphi MapGis MapGis DLL API MapGis function _InitWorkArea(HINST:Integer):Integer;

More information

27 :OPC 45 [4] (Automation Interface Standard), (Costom Interface Standard), OPC 2,,, VB Delphi OPC, OPC C++, OPC OPC OPC, [1] 1 OPC 1.1 OPC OPC(OLE f

27 :OPC 45 [4] (Automation Interface Standard), (Costom Interface Standard), OPC 2,,, VB Delphi OPC, OPC C++, OPC OPC OPC, [1] 1 OPC 1.1 OPC OPC(OLE f 27 1 Vol.27 No.1 CEMENTED CARBIDE 2010 2 Feb.2010!"!!!!"!!!!"!" doi:10.3969/j.issn.1003-7292.2010.01.011 OPC 1 1 2 1 (1., 412008; 2., 518052), OPC, WinCC VB,,, OPC ; ;VB ;WinCC Application of OPC Technology

More information

epub83-1

epub83-1 C++Builder 1 C + + B u i l d e r C + + B u i l d e r C + + B u i l d e r C + + B u i l d e r 1.1 1.1.1 1-1 1. 1-1 1 2. 1-1 2 A c c e s s P a r a d o x Visual FoxPro 3. / C / S 2 C + + B u i l d e r / C

More information

穨文件1

穨文件1 2-1 Access 2000 Visual Basic Access 2000 97 Office Visual Basic Visual Basic Visual Basic VBA Visual Basic Visual Basic 2-1-1 Visual Basic Access Visual Basic ( ) 2-1 2-1 Visual Basic 2-1 Microsoft Access

More information

1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET NET Framework.NET Framework 2.0 ( 3 ).NET Framework 2.0.NET F

1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET NET Framework.NET Framework 2.0 ( 3 ).NET Framework 2.0.NET F 1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET 2.0 2.0.NET Framework.NET Framework 2.0 ( 3).NET Framework 2.0.NET Framework ( System ) o o o o o o Boxing UnBoxing() o

More information

// HDevelopTemplateWPF projects located under %HALCONEXAMPLES%\c# using System; using HalconDotNet; public partial class HDevelopExport public HTuple

// HDevelopTemplateWPF projects located under %HALCONEXAMPLES%\c# using System; using HalconDotNet; public partial class HDevelopExport public HTuple halcon 与 C# 混合编程之 Halcon 代码调用 写在前面 完成 halcon 与 C# 混合编程的环境配置后, 进行界面布局设计构思每一个按钮所需要实现 的功能, 将 Halcon 导出的代码复制至相应的 C# 模块下即可 halcon 源程序 : dev_open_window(0, 0, 512, 512, 'black', WindowHandle) read_image (Image,

More information

ActiveX Control

ActiveX Control ActiveX Control For Visual Basic 2005.NET [ 版本 : 1.0] 1 安裝 Windows 驅動程式 請依照下列步驟 : 1. 執行 Windows 驅動程式安裝程式 ( 此範例為 PIO-DIO) 驅動程式位置 : CD:\NAPDOS\PCI\PIO-DIO\dll_ocx\Driver http://ftp.icpdas.com/pub/cd/iocard/pci/napdos/pci/pio-dio/dll_ocx/driver/

More information

TwinCAT 1. TwinCAT TwinCAT PLC PLC IEC TwinCAT TwinCAT Masc

TwinCAT 1. TwinCAT TwinCAT PLC PLC IEC TwinCAT TwinCAT Masc TwinCAT 2001.12.11 TwinCAT 1. TwinCAT... 3 2.... 4... 4...11 3. TwinCAT PLC... 13... 13 PLC IEC 61131-3... 14 4. TwinCAT... 17... 17 5. TwinCAT... 18... 18 6.... 19 Maschine.pro... 19... 27 7.... 31...

More information

untitled

untitled MODBUS 1 MODBUS...1 1...4 1.1...4 1.2...4 1.3...4 1.4... 2...5 2.1...5 2.2...5 3...6 3.1 OPENSERIAL...6 3.2 CLOSESERIAL...8 3.3 RDMULTIBIT...8 3.4 RDMULTIWORD...9 3.5 WRTONEBIT...11 3.6 WRTONEWORD...12

More information

PowerPoint Presentation

PowerPoint Presentation Visual Basic 2005 學 習 範 本 第 7 章 陣 列 的 活 用 7-1 陣 列 當 我 們 需 要 處 理 資 料 時, 都 使 用 變 數 來 存 放 資 料 因 為 一 個 變 數 只 能 代 表 一 個 資 料, 若 需 要 處 理 100 位 同 學 的 成 績 時, 便 要 使 用 100 個 不 同 的 變 數 名 稱, 這 不 但 會 增 加 變 數 名 稱 命 名

More information

手册 doc

手册 doc 1. 2. 3. 3.1 3.2 3.3 SD 3.4 3.5 SD 3.6 3.7 4. 4.1 4.2 4.3 SD 4.4 5. 5.1 5.2 5.3 SD 6. 1. 1~3 ( ) 320x240~704x288 66 (2G SD 320x2401FPS ) 32M~2G SD SD SD SD 24V DC 3W( ) -10~70 10~90% 154x44x144mm 2. DVR106

More information

TC35短信发送程序设计

TC35短信发送程序设计 http://www.dragonsoft.net.cn/down/project/tc35_sms.rar TC35 AT /down/book/tc35_at.pdf TC35/TC35i GSM Modem TC35 GSM POS COM SIM DOWN COM E, vbcr AT VB6.0 1)C# http://www.yesky.com/softchannel/72342380468109312/20040523/1800310.shtml,

More information

VB控件教程大全

VB控件教程大全 Datagrid DataGrid1.Columns.Remove(0) ' 0 DataGrid1.Columns.Add(0).Caption= ' DataGrod1.Columns(0).DataField= Name ' Adodc1.Refresh DataGrid BackColor Font DataGrid CellPadding HTML CellSpacing HTML Width

More information

Microsoft PowerPoint - VB14.ppt

Microsoft PowerPoint - VB14.ppt VB 列表盒 LISTBOX 應用 資科系 林偉川 執行畫面 1 2 1 重要屬性 LISTBOX 物件 (VB6) 新增至 LISTBOX 物件中 ADDITEM 自 LISTBOX 物件中刪除選取物件 REMOVEITEM 自 LISTBOX 物件中取出選取物件 ListIndex 顯示 LISTBOX 物件中紀錄個數 Listcount 3 LISTBOX 物件 (VB.NET) 重要屬性 新增至

More information

一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页

一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页 第 1 页共 32 页 crm Mobile V1.0 for IOS 用户手册 一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页 二 crm Mobile 界面介绍 : 第 3 页共 32 页 三 新建 (New) 功能使用说明 1 选择产品 第 4 页共 32 页 2 填写问题的简要描述和详细描述 第 5 页共

More information

Microsoft Word - 小心翼翼的二十一點N.doc

Microsoft Word - 小心翼翼的二十一點N.doc 投 稿 類 別 : 資 訊 類 篇 名 : 小 心 翼 翼 的 二 十 一 點 作 者 : 陳 鈺 文 國 立 瑞 芳 高 級 工 業 職 業 學 校 資 訊 二 李 伯 謙 國 立 瑞 芳 高 級 工 業 職 業 學 校 資 訊 二 胡 家 媛 國 立 瑞 芳 高 級 工 業 職 業 學 校 資 訊 二 指 導 老 師 : 周 曉 玲 老 師 陳 思 亮 主 任 壹 前 言 一 研 究 動 機 平

More information

untitled

untitled PowerBuilder Tips 利 PB11 Web Service 年度 2 PB Tips PB9 EAServer 5 web service PB9 EAServer 5 了 便 web service 來說 PB9 web service 力 9 PB11 release PB11 web service 力更 令.NET web service PB NVO 論 不 PB 來說 說

More information

VB程序设计教程

VB程序设计教程 高 等 学 校 教 材 Visual Basic 程 序 设 计 教 程 魏 东 平 郑 立 垠 梁 玉 环 石 油 大 学 出 版 社 内 容 提 要 本 书 是 按 高 等 学 校 计 算 机 程 序 设 计 课 程 教 学 大 纲 编 写 的 大 学 教 材, 主 要 包 括 VB 基 础 知 识 常 用 程 序 结 构 和 算 法 Windows 用 户 界 面 设 计 基 础 文 件 处

More information

Chapter 16 集合

Chapter 16 集合 Chapter 16 集合 20 ArrayList StringCollection 16 本章學習目標 : ArrayList ArrayList Array StringCollection 16-1 21 10-3-8 System.Array Clear Clear 16-1 Clear System.Array Microsoft System.Collection IList 542

More information

3 Driver do Microsoft Access (*.mdb) hisdata IFIX 1.4

3 Driver do Microsoft Access (*.mdb) hisdata IFIX 1.4 IFix3.5 ACCESS ACCESS hisdata D:\Dynamics\SampleSystem\HistoricalData ODBC DSN hisdata 1 ODBC 1.1 2 1.2 3 Driver do Microsoft Access (*.mdb) 1.3 4 hisdata IFIX 1.4 1.4 5 Access 1.5 6 ODBC ifix3.5 1.6 1.6

More information

RunPC2_.doc

RunPC2_.doc PowerBuilder 8 (5) PowerBuilder Client/Server Jaguar Server Jaguar Server Connection Cache Thin Client Internet Connection Pooling EAServer Connection Cache Connection Cache Connection Cache Connection

More information

untitled

untitled 1 .NET 利 [] [] 來 說 切 切 理 [] [ ] 來 說 拉 類 類 [] [ ] 列 連 Web 行流 來 了 不 不 不 流 立 行 Page 類 Load 理 Response 類 Write 料 Redirect URL Response.Write("!! ives!!"); Response.Redirect("WebForm2.aspx"); (1) (2) Web Form

More information

untitled

untitled ADF Web ArcGIS Server ADF GeocodeConnection control 4-2 Web ArcGIS Server Application Developer Framework (ADF).NET interop semblies.net Web ADF GIS Server 4-3 .NET ADF Web Represent the views in ArcMap

More information

ThreeDtunnel.doc

ThreeDtunnel.doc (12) 1 1. Visual Basic Private Sub LoadDatabase() Dim strip As String Dim straccount As String Dim strpassword As String Dim strdatabase As String Dim strtable As String Dim strsql As String Dim strtemp1

More information

专注于做最好的嵌入式计算机系统供应商

专注于做最好的嵌入式计算机系统供应商 专注于做最好的嵌入式计算机系统供应商 基于 ARMSYS2440/2410 开发应用程序 (EVC&VS2005) Rev 1.0 2008 年 3 月 24 日 杭州立宇泰电子有限公司 HangZhou LiYuTai Elec.Co.,Ltd 开发应用程序的过程一般分两步, 第一步在 PC 机开发环境下设计和编译应用程序, 第二步将它下载到 目标系统, 也就是我们的 ARMSYS2440 平台上运行

More information

Microsoft PowerPoint - OPVB1基本VB.ppt

Microsoft PowerPoint - OPVB1基本VB.ppt 大 綱 0.VB 能 做 什 麼? CH1 VB 基 本 認 識 1.VB 歷 史 與 版 本 2.VB 環 境 簡 介 3. 即 時 運 算 視 窗 1 0.VB 能 做 什 麼? Visual Basic =>VB=> 程 式 設 計 語 言 => 設 計 程 式 設 計 你 想 要 的 功 能 的 程 式 自 動 化 資 料 庫 計 算 模 擬 遊 戲 網 路 監 控 實 驗 輔 助 自 動

More information

untitled

untitled 說 參 例 邏 邏 1. 說 2. 數 數 3. 8 4. 理念 李 龍老 立 1. 理 料 2. 理 料 3. 數 料 4. 流 邏 念 5. 良 6. 讀 行 行 7. 行 例 來 邏 1. 說 說 識 量 2. 說 理 類 3. 數 數 念 4. 令 5. 良 6. 流 邏 念 7. 說 邏 理 力 1. 2. 3. 4. 5. 列 念 1 參 1. ( Visual Basic 例 ) (1)

More information

BOOL EnumWindows(WNDENUMPROC lparam); lpenumfunc, LPARAM (Native Interface) PowerBuilder PowerBuilder PBNI 2

BOOL EnumWindows(WNDENUMPROC lparam); lpenumfunc, LPARAM (Native Interface) PowerBuilder PowerBuilder PBNI 2 PowerBuilder 9 PowerBuilder Native Interface(PBNI) PowerBuilder 9 PowerBuilder C++ Java PowerBuilder 9 PBNI PowerBuilder Java C++ PowerBuilder NVO / PowerBuilder C/C++ PowerBuilder 9.0 PowerBuilder Native

More information

培训提纲

培训提纲 SuperMap Objects 5 基础培训教材 北京超图地理信息技术有限公司 2004 年 10 月 北京 版权所有 2001-2004, 北京超图地理信息技术有限公司 保留一切权力 警告, 本文档包含的所有内容是北京超图地理信息技术有限公司的财产, 受到著作权法和国际公约的保护 未得到本公司的书面许可, 不能以任何方式 ( 电子的或机械的, 包括影印 ) 翻印或转载本文档的任何部分 本文档并不代表供应商或其代理的承诺,

More information

SuperMap Objects 中级开发教程

SuperMap Objects 中级开发教程 SuperMap Objects 开发教程 ( 中级篇 ) 北京超图地理信息技术有限公司 2004 年 8 月. 北京 版权所有 (1997-2004), 北京超图地理信息技术有限公司 保留一切权力 警告, 本文档包含的所有内容是北京超图地理信息技术有限公司的财产, 受到著作权法和国际公约的保护 未得到本公司的书面许可, 不能以任何方式 ( 电子的或机械的, 包括影印 ) 翻印或转载本文档的任何部分

More information

RUN_PC連載_10_.doc

RUN_PC連載_10_.doc PowerBuilder 8 (10) Jaguar CTS ASP Jaguar CTS PowerDynamo Jaguar CTS Microsoft ASP (Active Server Pages) ASP Jaguar CTS ASP Jaguar CTS ASP Jaguar CTS ASP Jaguar CTS ASP Jaguar CTS ASP Jaguar Server ASP

More information

6-1 Table Column Data Type Row Record 1. DBMS 2. DBMS MySQL Microsoft Access SQL Server Oracle 3. ODBC SQL 1. Structured Query Language 2. IBM

6-1 Table Column Data Type Row Record 1. DBMS 2. DBMS MySQL Microsoft Access SQL Server Oracle 3. ODBC SQL 1. Structured Query Language 2. IBM CHAPTER 6 SQL SQL SQL 6-1 Table Column Data Type Row Record 1. DBMS 2. DBMS MySQL Microsoft Access SQL Server Oracle 3. ODBC SQL 1. Structured Query Language 2. IBM 3. 1986 10 ANSI SQL ANSI X3. 135-1986

More information

untitled

untitled 1 行 行 行 行.NET 行 行 類 來 行 行 Thread 類 行 System.Threading 來 類 Thread 類 (1) public Thread(ThreadStart start ); Name 行 IsAlive 行 行狀 Start 行 行 Suspend 行 Resume 行 行 Thread 類 (2) Sleep 行 CurrentThread 行 ThreadStart

More information

IsPostBack 2

IsPostBack 2 5 IsPostBack 2 TextBox 3 TextBox TextBox 4 TextBox TextBox 1 2 5 TextBox Columns MaxLength ReadOnly Rows Text TextMode TextMode MultiLine TextMode MultiLine True False TextMode MultiLine Password MulitLine

More information

概述

概述 OPC Version 1.8 build 0925 KOCRDK Knight OPC Client Rapid Development Toolkits Knight Workgroup, eehoo Technology 2002-9 OPC 1...4 2 API...5 2.1...5 2.2...5 2.2.1 KOC_Init...5 2.2.2 KOC_Uninit...5 2.3...5

More information

VC访问VB的ActiveX.dll.doc

VC访问VB的ActiveX.dll.doc 如何从 VisualC++6.0 可执行文件访问 VisualBasicActiveXDLL 本文介绍三种方法可以从 VisualC++6.0 访 VisualBasicActiveXDLL 执行 1. 创建 VisualBasicActiveXDLL 项目 默认情况下创建 Class 1 2. 以下代码添加到 Class 1: Public Function MyVBFunction(x As Integer)

More information

mvc

mvc Build an application Tutor : Michael Pan Application Source codes - - Frameworks Xib files - - Resources - ( ) info.plist - UIKit Framework UIApplication Event status bar, icon... delegation [UIApplication

More information

FY.DOC

FY.DOC 高 职 高 专 21 世 纪 规 划 教 材 C++ 程 序 设 计 邓 振 杰 主 编 贾 振 华 孟 庆 敏 副 主 编 人 民 邮 电 出 版 社 内 容 提 要 本 书 系 统 地 介 绍 C++ 语 言 的 基 本 概 念 基 本 语 法 和 编 程 方 法, 深 入 浅 出 地 讲 述 C++ 语 言 面 向 对 象 的 重 要 特 征 : 类 和 对 象 抽 象 封 装 继 承 等 主

More information

MVB-1001.DOC

MVB-1001.DOC 20 1.5 10 15 20 25 80 100 CSF 1. 2. 0105 3. 4. 5. 30% 1.5 0.75 1. Visual Basic Visual Basic (A) Visual Basic Enterprise Edition (B) Visual Basic Script Edition (C) Visual Basic Learning Edition (D) Visual

More information

Fun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc

Fun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc References (Section 5.2) Hsuan-Tien Lin Deptartment of CSIE, NTU OOP Class, March 15-16, 2010 H.-T. Lin (NTU CSIE) References OOP 03/15-16/2010 0 / 22 Fun Time (1) What happens in memory? 1 i n t i ; 2

More information

帝国CMS下在PHP文件中调用数据库类执行SQL语句实例

帝国CMS下在PHP文件中调用数据库类执行SQL语句实例 帝国 CMS 下在 PHP 文件中调用数据库类执行 SQL 语句实例 这篇文章主要介绍了帝国 CMS 下在 PHP 文件中调用数据库类执行 SQL 语句实例, 本文还详细介绍了帝国 CMS 数据库类中的一些常用方法, 需要的朋友可以参考下 例 1: 连接 MYSQL 数据库例子 (a.php)

More information

<C8EBC3C5C6AAA3A8B5DA31D5C2A3A92E696E6464>

<C8EBC3C5C6AAA3A8B5DA31D5C2A3A92E696E6464> 第 1 章 进入 Photoshop 的全新世界 本章导读 Photoshop 1 1.1 Photoshop CS6 Photoshop Photoshop 1.1.1 Photoshop POP 1-1 图 1-1 平面广告效果 1.1.2 Photoshop 1-2 Photoshop CS6 Photoshop CS6 Photoshop CS6 Extended 3D 3 Photoshop

More information

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 ->

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 -> 目录 1 大概思路... 1 2 创建 WebAPI... 1 3 创建 CrossMainController 并编写... 1 4 Nuget 安装 microsoft.aspnet.webapi.cors... 4 5 跨域设置路由... 4 6 编写 Jquery EasyUI 界面... 5 7 运行效果... 7 8 总结... 7 1 1 大概思路 创建 WebAPI 创建 CrossMainController

More information

untitled

untitled 1 .NET sln csproj dll cs aspx 說 料 料 利 來 料 ( 來 ) 利 [] [] 來 說 切 切 理 [] [ ] 來 說 拉 類 類 [] [ ] 列 連 Web 行流 來 了 不 不 不 流 立 行 Page 類 Load 理 Click 滑 料 Response 列 料 Response HttpResponse 類 Write 料 Redirect URL Response.Write("!!

More information

多層次傳銷與獎金系統

多層次傳銷與獎金系統 醒 吾 技 術 學 院 資 訊 管 理 系 ( 五 專 部 ) 九 十 六 學 年 度 畢 業 專 題 多 層 次 傳 銷 與 獎 金 系 統 組 員 : 921506122 游 濬 瑋 921506126 陳 彥 宇 921506139 林 龍 華 921506144 陳 昶 志 921506149 楊 璧 如 指 導 老 師 : 汪 淵 老 師 中 華 民 國 九 十 七 年 一 月 十 一 醒

More information

Microsoft Word - 01.DOC

Microsoft Word - 01.DOC 第 1 章 JavaScript 简 介 JavaScript 是 NetScape 公 司 为 Navigator 浏 览 器 开 发 的, 是 写 在 HTML 文 件 中 的 一 种 脚 本 语 言, 能 实 现 网 页 内 容 的 交 互 显 示 当 用 户 在 客 户 端 显 示 该 网 页 时, 浏 览 器 就 会 执 行 JavaScript 程 序, 用 户 通 过 交 互 式 的

More information

投影片 1

投影片 1 資料庫管理程式 ( 補充教材 -Part2) 使用 ADO.NET 連結資料庫 ( 自行撰寫程式碼 以實現新增 刪除 修改等功能 ) Private Sub InsertButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles InsertButton.Click ' 宣告相關的 Connection

More information

bingdian001.com

bingdian001.com 1. DLL(Dynamic Linkable Library) DLL ± lib EXE DLL DLL EXE EXE ± EXE DLL 1 DLL DLL DLL Windows DLL Windows API Visual Basic Visual C++ Delphi 2 Windows system32 kernel32.dll user32.dll gdi32.dll windows

More information

Microsoft Word - CIN-DLL.doc

Microsoft Word - CIN-DLL.doc 6.3. 调 用 动 态 链 接 库 (DLL) 相 对 于 CIN 来 讲,NI 更 推 荐 用 户 使 用 DLL 来 共 享 基 于 文 本 编 程 语 言 开 发 的 代 码 除 了 共 享 或 重 复 利 用 代 码, 开 发 人 员 还 能 利 用 DLL 封 装 软 件 的 功 能 模 块, 以 便 这 些 模 块 能 被 不 同 开 发 工 具 利 用 在 LabVIEW 中 使 用

More information

游戏厅捕鱼技巧_天天酷跑游戏技巧 2048游戏技巧,游戏厅打鱼技巧_

游戏厅捕鱼技巧_天天酷跑游戏技巧 2048游戏技巧,游戏厅打鱼技巧_ 游 戏 厅 捕 鱼 技 巧 _ 天 天 酷 跑 游 戏 技 巧 巧 _ 2048 游 戏 技 巧, 游 戏 厅 打 鱼 技 152 http://www.500630.com 游 戏 厅 捕 鱼 技 巧 _ 天 天 酷 跑 游 戏 技 巧 2048 游 戏 技 巧, 游 戏 厅 打 鱼 技 巧 _ 现 在 拦 截 api 游 戏 厅 打 鱼 技 巧 的 教 程 到 处 都 是, 我 就 不 列 举

More information

Outline USB Application Requirements Variable Definition Communications Code for VB Code for Keil C Practice

Outline USB Application Requirements Variable Definition Communications Code for VB Code for Keil C Practice 路 ESW 聯 USB Chapter 9 Applications For Windows Outline USB Application Requirements Variable Definition Communications Code for VB Code for Keil C Practice USB I/O USB / USB 3 料 2 1 3 路 USB / 列 料 料 料 LED

More information

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File 51 C 51 51 C C C C C C * 2003-3-30 pnzwzw@163.com C C C C KEIL uvision2 MCS51 PLM C VC++ 51 KEIL51 KEIL51 KEIL51 KEIL 2K DEMO C KEIL KEIL51 P 1 1 1 1-1 - 1 Project New Project 1 2 Windows 1 3 N C test

More information

基于UML建模的管理管理信息系统项目案例导航——VB篇

基于UML建模的管理管理信息系统项目案例导航——VB篇 PowerBuilder 8.0 PowerBuilder 8.0 12 PowerBuilder 8.0 PowerScript PowerBuilder CIP PowerBuilder 8.0 /. 2004 21 ISBN 7-03-014600-X.P.. -,PowerBuilder 8.0 - -.TP311.56 CIP 2004 117494 / / 16 100717 http://www.sciencep.com

More information

Microsoft Word - ch04三校.doc

Microsoft Word - ch04三校.doc 4-1 4-1-1 (Object) (State) (Behavior) ( ) ( ) ( method) ( properties) ( functions) 4-2 4-1-2 (Message) ( ) ( ) ( ) A B A ( ) ( ) ( YourCar) ( changegear) ( lowergear) 4-1-3 (Class) (Blueprint) 4-3 changegear

More information

第一章 章标题-F2 上空24,下空24

第一章 章标题-F2 上空24,下空24 Web 9 XML.NET Web Web Service Web Service Web Service Web Service Web Service ASP.NET Session Application SOAP Web Service 9.1 Web Web.NET Web Service Web SOAP Simple Object Access Protocol 9.1.1 Web Web

More information

untitled

untitled VB 來 立 李 龍老 年 參 車 令 度 綠 車 不 不 靈 了 來 令來 了老 利 來 練 念 邏 念 數 度 念 狀 不 度 令 數 更 參 VB VB VB 理 VB 類 數 (x,y) (0,0) x y x,y 數 (0,0) (x, 0) (0, y) (x, y) VB 裡 來 VB 來 1 Graphics VB Graphics Private Sub Button1_Click(

More information

untitled

untitled 1 .NET 料.NET 料 料來 類.NET Data Provider SQL.NET Data Provider System.Data.SqlClient 料 MS-SQL OLE DB.NET Data Provider System.Data.OleDb 料 Dbase FoxPro Excel Access Oracle Access ODBC.NET Data Provider 料

More information

Microsoft Word - 苹果脚本跟我学.doc

Microsoft Word - 苹果脚本跟我学.doc AppleScript for Absolute Starters 2 2 3 0 5 1 6 2 10 3 I 13 4 15 5 17 6 list 20 7 record 27 8 II 32 9 34 10 36 11 44 12 46 13 51 14 handler 57 15 62 63 3 AppleScript AppleScript AppleScript AppleScript

More information

序 软 件 工 程 思 想 林 锐 序 软 件 工 程 思 想 讲 述 软 件 开 发 和 做 程 序 员 的 道 理, 视 野 独 特, 构 思 新 颖, 内 容 风 趣, 不 落 窠 臼, 令 人 耳 目 一 新 堪 称 难 得, 以 至 回 味 无 穷 作 者 从 事 了 八 年 的 软 件 开 发 工 作, 在 他 的 博 士 学 位 论 文 完 成 之 际 写 下 了 这 本 心 之 所 感

More information

Guava学习之Resources

Guava学习之Resources Resources 提供提供操作 classpath 路径下所有资源的方法 除非另有说明, 否则类中所有方法的参数都不能为 null 虽然有些方法的参数是 URL 类型的, 但是这些方法实现通常不是以 HTTP 完成的 ; 同时这些资源也非 classpath 路径下的 下面两个函数都是根据资源的名称得到其绝对路径, 从函数里面可以看出,Resources 类中的 getresource 函数都是基于

More information

四川省普通高等学校

四川省普通高等学校 四 川 省 普 通 高 等 学 校 计 算 机 应 用 知 识 和 能 力 等 级 考 试 考 试 大 纲 (2013 年 试 行 版 ) 四 川 省 教 育 厅 计 算 机 等 级 考 试 中 心 2013 年 1 月 目 录 一 级 考 试 大 纲 1 二 级 考 试 大 纲 6 程 序 设 计 公 共 基 础 知 识 6 BASIC 语 言 程 序 设 计 (Visual Basic) 9

More information

提问袁小兵:

提问袁小兵: C++ 面 试 试 题 汇 总 柯 贤 富 管 理 软 件 需 求 分 析 篇 1. STL 类 模 板 标 准 库 中 容 器 和 算 法 这 部 分 一 般 称 为 标 准 模 板 库 2. 为 什 么 定 义 虚 的 析 构 函 数? 避 免 内 存 问 题, 当 你 可 能 通 过 基 类 指 针 删 除 派 生 类 对 象 时 必 须 保 证 基 类 析 构 函 数 为 虚 函 数 3.

More information

投影片 1

投影片 1 計算機程式及實習 期末報告 題目 : 六宿炒翻天 班級 : 奈米一乙姓名 : 陳洋翼學號 :4A514050 老師 : 謝慶存 程式說明 設計結帳系統, 選擇數量後, 在按下計算, 將會顯示總金額 若是老人或小孩, 將可享 8 折或 9 折的優惠 程式畫面 填選數量 在火腿蛋炒飯的數量選擇 1, 並按下計算, 可得總金額 50 元 程式畫面 打折 填選完後, 若客人是小孩或老人, 選擇欲打折項目,

More information

新版 明解C++入門編

新版 明解C++入門編 511!... 43, 85!=... 42 "... 118 " "... 337 " "... 8, 290 #... 71 #... 413 #define... 128, 236, 413 #endif... 412 #ifndef... 412 #if... 412 #include... 6, 337 #undef... 413 %... 23, 27 %=... 97 &... 243,

More information

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 odps-sdk 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基 开放数据处理服务 ODPS SDK SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基础功能的主体接口, 搜索关键词 "odpssdk-core" 一些

More information

untitled

untitled 1 Outline 數 料 數 數 列 亂數 練 數 數 數 來 數 數 來 數 料 利 料 來 數 A-Z a-z _ () 不 數 0-9 數 不 數 SCHOOL School school 數 讀 school_name schoolname 易 不 C# my name 7_eleven B&Q new C# (1) public protected private params override

More information

InstallShield InstallShield InstallShield Windows Installer ISWI ISWI InstallShield InstallShield InstallShield Windows Installer WI In

InstallShield InstallShield InstallShield Windows Installer ISWI ISWI InstallShield InstallShield InstallShield Windows Installer WI In InstallShield 1 InstallShield InstallShield InstallShield Windows Installer ISWI ISWI InstallShield InstallShield5 2000 InstallShield2000 2002 Windows Installer WI InstallShield Professional Version 6

More information

Oracle数据库实验指导书

Oracle数据库实验指导书 数 据 库 应 用 基 础 实 验 指 导 书 杨 福 兴 北 京 邮 电 大 学 机 电 工 程 实 验 教 学 中 心 2007.9 实 验 一 数 据 库 试 验 环 境 搭 建 试 验 1. 掌 握 安 装 数 据 库 服 务 器 和 客 户 机 的 方 法 2. 掌 握 测 试 客 户 机 与 服 务 器 连 通 性 的 方 法 3. 熟 悉 pl sql developer 的 操 作

More information

全国计算机技术与软件专业技术资格(水平)考试

全国计算机技术与软件专业技术资格(水平)考试 全 国 计 算 机 技 术 与 软 件 专 业 技 术 资 格 ( 水 平 ) 考 试 2008 年 上 半 年 程 序 员 下 午 试 卷 ( 考 试 时 间 14:00~16:30 共 150 分 钟 ) 试 题 一 ( 共 15 分 ) 阅 读 以 下 说 明 和 流 程 图, 填 补 流 程 图 中 的 空 缺 (1)~(9), 将 解 答 填 入 答 题 纸 的 对 应 栏 内 [ 说 明

More information

0SQL SQL SQL SQL SQL 3 SQL DBMS Oracle DBMS DBMS DBMS DBMS RDBMS R DBMS 2 DBMS RDBMS R SQL SQL SQL SQL SELECT au_fname,au_ lname FROM authors ORDER BY

0SQL SQL SQL SQL SQL 3 SQL DBMS Oracle DBMS DBMS DBMS DBMS RDBMS R DBMS 2 DBMS RDBMS R SQL SQL SQL SQL SELECT au_fname,au_ lname FROM authors ORDER BY 0 SQL SQL SELECT DISTINCT city, state FROM customers; SQL SQL DBMS SQL DBMS SQL 0-1 SQL SQL 0SQL SQL SQL SQL SQL 3 SQL DBMS Oracle DBMS DBMS DBMS DBMS RDBMS R DBMS 2 DBMS RDBMS R SQL SQL SQL SQL SELECT

More information

untitled

untitled 1 Access 料 (1) 立 料 [] [] [ 料 ] 立 料 Access 料 (2) 料 [ 立 料 ] Access 料 (3) 料 料 料 料 料 料 欄 ADO.NET ADO.NET.NET Framework 類 來 料 料 料 料 料 Ex MSSQL Access Excel XML ADO.NET 連 .NET 料.NET 料 料來 類.NET Data Provider

More information

2

2 1 2 1-1 Visual Basic 3 1-2 3/8-3/21 3/22-4/4 4/5-4/18 4/19-5/2 5/3-5/16 5/17-5/30 5/31-6/13 6/14-6/27 6/28-7/11 7/12-7/25 7/26-8/8 8/9-8/22 8/25-9/5 9/6-9/19 9/20-10/3 10/4-10/17 10/18-10/31 11/15-11/28

More information

2/14 Buffer I12, /* x=2, buffer = I 1 2 */ Buffer I243, /* x=34, buffer = I 2 43 */ x=56, buffer = I243 Buffer I243I265 code_int(int x, char *buffer)

2/14 Buffer I12, /* x=2, buffer = I 1 2 */ Buffer I243, /* x=34, buffer = I 2 43 */ x=56, buffer = I243 Buffer I243I265 code_int(int x, char *buffer) 1/14 IBM Rational Test RealTime IBM, 2004 7 01 50% IBM Rational Test RealTime IBM Rational Test RealTime 1. 50% IBM Rational Test RealTime IBM Rational Test RealTime 2. IBM Rational Test RealTime Test

More information

(HMI) IO A

(HMI) IO A 6.5 6.5 (HMI) IO 6.52 6.52 6.5 2007 113 A 602 100086 010 82616619 010 62638166 www.kingview.com 4 7 25 38 43 52 63 68 86 SQL 95 99 WEB 105 Web Web Web I/O Microsoft Windows XP/NT/2000 I/O PLC PLC PLC PLC

More information

untitled

untitled 1 MessageBox 類 MessageBox 類 Show Show (,,, ); Show (string, string, MessageBoxButtons, MessageBoxIcon) MessageBox 類 列 數 MessageBoxButtons.OK MessageBoxButtons.OKCancel MessageBoxButtons.AbortRetryIgnore

More information

untitled

untitled ArcGIS Server Web services Web services Application Web services Web Catalog ArcGIS Server Web services 6-2 Web services? Internet (SOAP) :, : Credit card authentication, shopping carts GIS:, locator services,

More information

Microsoft Word - Learn Objective-C.doc

Microsoft Word - Learn Objective-C.doc Learn Objective C http://cocoadevcentral.com/d/learn_objectivec/ Objective C Objective C Mac C Objective CC C Scott Stevenson [object method]; [object methodwithinput:input]; output = [object methodwithoutput];

More information

untitled

untitled 1 LinkButton LinkButton 連 Button Text Visible Click HyperLink HyperLink 來 立 連 Text ImageUrl ( ) NavigateUrl 連 Target 連 _blank _parent frameset _search _self 連 _top 例 sample2-a1 易 連 private void Page_Load(object

More information

上海市教育考试院关于印发新修订的

上海市教育考试院关于印发新修订的 沪 教 考 院 社 考 2012 7 号 上 海 市 教 育 考 试 院 关 于 印 发 上 海 市 高 等 学 校 计 算 机 等 级 考 试 大 纲 (2012 年 修 订 ) 的 通 知 各 有 关 高 校 : 为 进 一 步 加 强 本 市 高 校 计 算 机 基 础 教 学 工 作, 推 进 学 校 更 加 科 学 合 理 地 设 置 计 算 机 基 础 课 程 及 安 排 教 学 内 容,

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 按钮对象 (button) 当 JavaScript 读到 标记中的 type 属性值为 button 时, 自动建立一个按钮对象, 并将该对象放到表单对象的 elements 数组当中 按钮对象包括 : 普通按钮 (button) 提交按钮 (submit) 重置按钮 (reset) 1. 使用按钮对象的格式 document.forms[ 索引值 ].elements[ 索引值

More information

目录 WinForms 版 ComponentOne SSRSDocumentSource... Error! Bookmark not defined. Winform 版 ComponentOne 工具组件帮助... 1 SSRSDocumentSource 快速入门... 1 在代码中设定网络

目录 WinForms 版 ComponentOne SSRSDocumentSource... Error! Bookmark not defined. Winform 版 ComponentOne 工具组件帮助... 1 SSRSDocumentSource 快速入门... 1 在代码中设定网络 ComponentOne SSRSDocumentSource for WinForms 入门教程 目录 WinForms 版 ComponentOne SSRSDocumentSource... Error! Bookmark not defined. Winform 版 ComponentOne 工具组件帮助... 1 SSRSDocumentSource 快速入门... 1 在代码中设定网络证书

More information

<4D F736F F D D342DA57CA7DEA447B14D2DA475B57BBB50BADEB27AC3FEB14DA447B8D5C344>

<4D F736F F D D342DA57CA7DEA447B14D2DA475B57BBB50BADEB27AC3FEB14DA447B8D5C344> 1. 請 問 誰 提 出 積 體 電 路 (IC) 上 可 容 納 的 電 晶 體 數 目, 約 每 隔 24 個 月 (1975 年 更 改 為 18 個 月 ) 便 會 增 加 一 倍, 效 能 也 將 提 升 一 倍, 也 揭 示 了 資 訊 科 技 進 步 的 速 度? (A) 英 特 爾 (Intel) 公 司 創 始 人 戈 登. 摩 爾 (Gordon Moore) (B) 微 軟 (Microsoft)

More information

Oracle Solaris Studio makefile C C++ Fortran IDE Solaris Linux C/C++/Fortran IDE "Project Properties" IDE makefile 1.

Oracle Solaris Studio makefile C C++ Fortran IDE Solaris Linux C/C++/Fortran IDE Project Properties IDE makefile 1. Oracle Solaris Studio 12.2 IDE 2010 9 2 8 9 10 11 13 20 26 28 30 32 33 Oracle Solaris Studio makefile C C++ Fortran IDE Solaris Linux C/C++/Fortran IDE "Project Properties" IDE makefile 1. "File" > "New

More information

epub 94-3

epub 94-3 3 A u t o C A D L AY E R L I N E T Y P E O S N A P S T Y L E X R E F - AutoLISP Object ARX A u t o C A D D C L A u t o C A D A u t o d e s k P D B D C L P D B D C L D C L 3.1 Wi n d o w s A u t o C A D

More information

投稿類別:電子工程類

投稿類別:電子工程類 投 稿 類 別 : 工 程 技 術 類 篇 名 : 井 字 生 死 戰 攻 略 作 者 : 陳 威 宇 國 立 臺 南 高 級 海 事 水 產 職 業 學 校 電 子 科 二 年 甲 班 邱 富 群 國 立 臺 南 高 級 海 事 水 產 職 業 學 校 電 子 科 二 年 甲 班 指 導 老 師 : 林 育 助 老 師 王 彥 盛 老 師 壹 前 言 家 喻 戶 曉 的 井 字 遊 戲 (Tic-Tac-Toe)

More information

Microsoft Office SharePoint Server MOSS Web SharePoint Web SharePoint 22 Web SharePoint Web Web SharePoint Web Web f Lists.asmx Web Web CAML f

Microsoft Office SharePoint Server MOSS Web SharePoint Web SharePoint 22 Web SharePoint Web Web SharePoint Web Web f Lists.asmx Web Web CAML f Web Chapter 22 SharePoint Web Microsoft Office SharePoint Server MOSS Web SharePoint Web SharePoint 22 Web 21 22-1 SharePoint Web Web SharePoint Web Web f Lists.asmx Web Web CAML f Views.asmx View SharePoint

More information

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double

More information

9, : Java 19., [4 ]. 3 Apla2Java Apla PAR,Apla2Java Apla Java.,Apla,,, 1. 1 Apla Apla A[J ] Get elem (set A) A J A B Intersection(set A,set B) A B A B

9, : Java 19., [4 ]. 3 Apla2Java Apla PAR,Apla2Java Apla Java.,Apla,,, 1. 1 Apla Apla A[J ] Get elem (set A) A J A B Intersection(set A,set B) A B A B 25 9 2008 9 M ICROEL ECTRON ICS & COMPU TER Vol. 25 No. 9 September 2008 J ava 1,2, 1,2, 1,2 (1, 330022 ; 2, 330022) :,. Apla - Java,,.. : PAR ;Apla - Java ; ;CMP ; : TP311 : A : 1000-7180 (2008) 09-0018

More information

ebook129-9

ebook129-9 9 : D L L D L L D L L D L L D e l p h i D L L DLL DLL D L L D L L D L L Wi n 32 D L L D L L Wi n d o w s D L L D L L D L D L L 9.1 DLL Wi n d o w s D L L D L L K e r n e l 32. d l l U s e r 32. d l l G

More information

ebook

ebook 3 3 3.1 3.1.1 ( ) 90 3 1966 B e r n s t e i n P ( i ) R ( i ) W ( i P ( i P ( j ) 1) R( i) W( j)=φ 2) W( i) R( j)=φ 3) W( i) W( j)=φ 3.1.2 ( p r o c e s s ) 91 Wi n d o w s Process Control Bl o c k P C

More information

ebook140-9

ebook140-9 9 VPN VPN Novell BorderManager Windows NT PPTP V P N L A V P N V N P I n t e r n e t V P N 9.1 V P N Windows 98 Windows PPTP VPN Novell BorderManager T M I P s e c Wi n d o w s I n t e r n e t I S P I

More information

範本檔

範本檔 右 鍵 即 時 通 專 題 學 生 : 林 信 良 朱 韋 寧 指 導 教 授 : 鄭 福 炯 教 授 大 同 大 學 資 訊 工 程 學 系 專 題 報 告 中 華 民 國 九 十 七 年 一 月 II 摘 要 當 我 們 在 上 網 的 時 候, 有 時 候 會 想 要 搜 尋 一 些 資 料 這 時 候 我 們 就 要 把 想 要 搜 尋 的 文 字 複 製 起 來, 再 開 啟 一 個 新

More information

CDWA Mapping. 22 Dublin Core Mapping

CDWA Mapping. 22 Dublin Core Mapping (version 0.23) 1 3... 3 3 3 5 7 10 22 CDWA Mapping. 22 Dublin Core Mapping. 24 26 28 30 33 2 3 X version 0.2 ( ) 4 Int VarcharText byte byte byte Id Int 10 Management Main Code Varchar 30 Code Original

More information

Microsoft Word Visual_Basic程序设计上机实践教程正文.doc

Microsoft Word Visual_Basic程序设计上机实践教程正文.doc 实验 3 顺序和分支结构程序设计 实验目的 1. 掌握顺序结构的程序设计思想 2. 掌握命令按钮 (CommandButton) 标签 (Label) 文本框 (TextBox) 编辑框 (EditBox) 等常用控件的使用方法 3. 了解并掌握对话框函数 MessageBox() 的含义与用法 4. 了解和熟悉线条控件 形状控件的画法以及主要属性的用法 实验内容 1. 顺序结构 实训 3-1 编写一应用程序,

More information