| 网站首页 | 范文 | 演讲致词 | 汇报体会 | 总结报告 | 公文方案 | 领导讲话 | 党建工会 | 论文 | 文档 | 书信 | 
您现在的位置: 范文大全网 >> 论文 >> 计算机论文 >> 正文 用户登录 新用户注册
PowerBuilder和MapInfo的集成开发技术           ★★★
PowerBuilder和MapInfo的集成开发技术
的回调类,因此必须编写一个在mapinfo服务器中运行的mapbasic应用程序,用来将回调信息反馈给powerbuilder客户程序。其实现过程为: 首先,在包含集成地图窗口的powerbuilder应用窗口创建一个用户自定义事件ue_selectionmade,事件id为pbm_custom01(= 1024)。 然后,编写一个在mapinfo服务器中运行的mapbasic应用程序,在此应用程序中添加对地图窗口事件进行处理的子程序。当对客户程序中的集成地图窗口进行操作时,mapbasic程序中对应的事件处理程序被触发。在事件处理程序中,可以将要传递给客户程序的信息保存到mapbasic中定义的一个全局变量中,然后使用win32 api函数postmessage(),以powerbuilder应用窗口的句柄和该窗口的用户自定义事件的id为参数,向powerbuilder客户程序发送消息,这样powerbuilder客户程序就可以在该窗口的用户自定义事件中处理地图窗口事件了,并且还可以使用mbapplications对象的方法,获取mapbasic全局变量中保存的事件信息。如下代码展示了mapbasic应用程序在接收到地图对象选择事件时的处理的过程: 预定义powerbuilder应用窗口的用户自定义事件的唯一数值标识符 define selection_made 1024 响应地图对象选择事件 sub selchangedhandler() 如果选中一个地图对象 if commandinfo(cmd_info_seltype) = 1 then 保存地图对象所在的表的名称 g_seltabname = selectioninfo(sel_info_tablename) 向powerbuilder客户程序发送消息 irc = postmessage(g_pbhwnd_bg,selection_made,0,0) end if end sub 下面的程序段中给出了实现回调时powerbuilder客户程序的处理过程。该处理过程使用了mapbasic编写的mbserver.mbx程序。在mapbasic程序中保存事件信息的变量为g_seltabname,而g_pbhwnd是mapbasic程序中用来接收powerbuilder客户程序窗口句柄的全局变量。 //在mapinfo服务器中运行mapbasic应用程序 mapinfo.do(run application ~ + gs_appdir + datafusion.mbx~) //创建对mapbasic应用程序进行控制的ole自动化对象 mbappoleobject = create oleobject mbappoleobject = mapinfo.mbapplications.item(1) //传递powerbuilder客户程序中的窗口句柄给mapbasic应用程序 //以便mapbasic应用程序将返回给powerbuilder客户程序 mbappoleobject.mbglobals.item(g_pbhwnd_bg).value = string(handle(this)) 由下面代码所示的powerbuilder客户程序就可以在窗口w_map的用户自定义事件ue_selectionmade中处理地图窗口事件: //在powerbuilder客户程序的用户自定义事件中使用mbappoleobject对象获取回调信息 ls_mi_commandinfo = mbappoleobject.mbglobals.item(g_commandinfostring).value 5.充分利用mapbasic应用程序 mapbasic是mapinfo提供的用户系统开发工具,它具有对地图对象的管理、对含有地图对象的mapinfo表的管理等方面的强大功能。 在将mapinfo地图集成到powerbuilder的开发应用中,mapbasic不仅仅能用来实现回调,还可实现其它诸多功能。例如,在开发过程中经常会遇到需要保存地图对象类型的中间结果的问题,而在powerbuilder中没有与之对应的数据类型,又难以通过mapinfo ole自动化对象的方法和属性实现等诸如此类的问题,若利用mapbasic应用程序以及使用它的ole自动化对象mbapplications的方法和属性来解决,可以达到事半功倍之效果。 与mapinfo ole自动化对象相似,mapbasic的ole自动化对象mbapplications也有自己的do方法和eval方法。每当powerbuilder客户程序调用它们时,mapinfo就会自动调用mapbasic的保留过程remotemsghandler()或remotequeryhandler()过程,并可以在过程中通过commandinfo(cmd_info_msg)得到调用do方法或eval方法的参数。 以下代码运用mbapplications的do方法,实现改变当前选中地图对象的颜色: //要求将当前选中地图对象的颜色改为兰色 mbappoleobject.do(blue) mapinfo将自动调用remotemsghandler()过程: sub remotemsghandler() dim myobject as object 获取并分析do方法的参数 cmdinfostr = commandinfo(cmd_info_msg) 改变地图对象的颜色 if cmdstr= blue then myobject = selection.obj alter object myobject info 2, makecustomsymbol (towe1-32.bmp, rgb(0,0,255), 18, 2) update selection set obj = myobject where rowid = 1 end if end sub m

上一页  [1] [2] [3] 下一页

  • 上一个论文:

  • 下一个论文:


  • 看了《PowerBuilder和MapInfo的集成开发技术》的网友还看了:
    [免费范文]利用开源框架Struts+Hibernate实现Web应用程序
    [免费范文]LabWindows/CVI的应用特点
    [免费范文]基于RRAS与虚拟专用网技术在Windows中的实现
    [今日更新]巧用PowerPoint制作高中化学多媒体课件
    [今日更新]基于语音技术的信息无障碍Web页面实现
    [今日更新]基于TOWS矩阵的县域集群经济发展战略研究
    [今日更新]Windows8是微软的翻身之战
    [今日更新]Windows8 LOGO发布,经典Windows LOGO回顾
    [今日更新]Web2.0网站新闻传播的特性比较与趋势
    [今日更新]《mary,did you know》__圣诞歌曲

    计算机论文
    普通论文关于现代化语境下中国“公共性”
    普通论文浅析计算机技术在HIS中的应用
    普通论文论网络言论自由
    普通论文浅论煤矿安全环境监测监控系统
    普通论文基于.NET技术的高校办公自动化系
    普通论文网络信息安全状况与可信计算
    普通论文Windows2003 内核级进程隐藏、侦
    普通论文PSD813F2在FPGA配置中的应用
    普通论文长春市在网运行数据网络概述
    普通论文关于智能公共设施网络的构建理念
    普通论文网络交际英语的文体特征
    普通论文论网络环境建设与网络道德自律
    论文
    普通论文[企业管理]浅议施工监理原则的十六
    普通论文[今日更新]中国民营企业关键员工流
    普通论文[今日更新]土狼雌性长有“假阴茎”
    普通论文[企业管理]通过现金流量表浅析企业
    普通论文[法律论文]行政适用法律错误若干问
    普通论文[工程建筑]工程量清单计价方式有关
    普通论文[免费范文]在全市实施百个经济薄弱
    普通论文[免费范文]没有理想的企业长不成巨
    范文大全
    普通范文[范文大全]市委宣传部终述职报告
    普通范文[范文大全]党员领导干部廉洁从政若
    普通范文[范文大全]2011年新年元旦晚会小学
    普通范文[范文大全]2012年某中学“三月学雷
    普通范文[范文大全]中学月考工作总结校长讲
    普通范文[范文大全]食药监管理局科学发展观
    普通范文[范文大全]工商局开展廉政风险和市
    普通范文[个人简历]高级化工工艺专业个人简
    演讲致词
    普通演讲[职场礼仪范文]办公室支招:做个勤奋员工
    普通演讲[就职演说]监察局领导就职演讲稿
    普通演讲[会议发言稿]创先争优生活会发言稿
    普通演讲[庆典致辞]在高新区春节团拜会上的祝
    普通演讲[竞聘演讲稿]挑战机遇,挑战压力—人事
    普通演讲[开业开幕]酒厂公司新厂开业活动开幕
    工作范文
    普通公文方案[模板范例]关于组织开展××读书活动
    普通公文方案[公文写作]入党思想汇报范文17
    普通总结[工作计划]2009年党风廉政建设责任制
    普通总结[工作汇报]上下同心  奋战三年全面实
    普通公文方案[公文写作]在党风廉政建设和反腐败工
    普通公文方案[计划方案]2010年销售工作计划
    普通总结[工作汇报]镇机关效能建设汇报材料
    普通总结[工作总结]车间一季度工作总结
    普通公文方案[公文写作]监督局优秀*党员先进事迹报
    普通党建工会[事迹材料]县科技局***同志先进事迹
    普通汇报体会[思想汇报]2011年预备党员思想汇报:合
    普通公文方案[公文写作]烟草:品牌文化不是企业文