2009年9月8日

硬件接口开发之USB电话录音盒来电显示

摘要: 除了上篇《硬件接口开发之Modem来电显》介绍的Modem来电显示,还可以采用USB电话录音盒来进行来电显示和电话录音功能,本文介绍如何在C#中实现该功能。首先我们看看我是如何在我的软件中集成USB电话录音盒的功能,先对USB电话录音盒的功能和应用场景有一个总体的认识先。 我的送水软件可以支持两路及以上多路的来电显示和电话录音功能,当用户有新的来电,系统会检测数据库是否存在该电话的用户,如果有那么调出该用户的资料(包括上次订购产品信息),否则提示操作员建立新客户的资料,并记录该次的电话号码。这些来电显示功能非常方便操作人员进行业务操作,点击下鼠标就可以完成客户的订单。 阅读全文

posted @ 2009-09-08 22:04 伍华聪 阅读(7660) 评论(6) 推荐(0) 编辑

2009年9月6日

硬件接口开发之Modem来电显示

摘要: 本文介绍下如何实现Modem的来电显示的功能。Modem的来电显示是在我最早的送水管理软件中实现的,大概是05年完成的,由于Modem的成本比较低(普通的在100元之内),而来电显示功能在送水管理软件中比较需要,因此是一项性价比比较好的功能。 随着时间的推移,Modem的生产越来越少,而支持来电显示模块的Modem就更少一些了,取而代之是功能比较专一的来电显示盒横行天下,一般USB来电显示盒都可以支持2路、4路、8路等等,但是USB来电显示盒较贵,Modem由于性价比比较好,市场上依然还继续出现。本篇主要介绍如何实现Modem的来电显示,下篇将继续介绍基于USB的来电显示盒的接口开发。目前在我的送水软件中,为了兼顾两者的好处,一般是集成了两个硬件的功能,随便选一个硬件都可以使用来电显示功能。 看看Modem来电显示的应用场景,在送水软件中,链接一台电话(Modem只能连接一台电话),当有客户的电话接入的时候,软件会提示用户的信息,并进入下订单的界面,如下所示。 阅读全文

posted @ 2009-09-06 23:07 伍华聪 阅读(7029) 评论(5) 推荐(3) 编辑

2009年9月5日

【转】ISession接口介绍

摘要: ISession Interface位于MapInfo.Engine命名空间。实现此接口的是一个内部对象SessionInternal,直接并不能使用此对象,必须用MapInfo.Session.Current 访问。从这里看的话这篇文章主要说的还是MapInfo.Session.Current 。因此以下所用的ISession Interface是指SessionInternal的实现接口,Isession实例是指MapInfo.Session.Current 包含的SessionInternal对象。 ISession Interface 是所有MapXtreme程序的起点。它管理Map程序必须初始化的资源。不过这些都不用我们参与,甚至我们想参与都难,所以一方面减轻了开发人员的负担,另一方面减少了灵活度。同时它提供了访问一些重要资源的属性:Catalog、MapFactory、CoordSysFactory、Selections等。 阅读全文

posted @ 2009-09-05 12:56 伍华聪 阅读(1260) 评论(0) 推荐(0) 编辑

2009年9月4日

[转]MapX 操作总结

摘要: 原贴地址:http://hi.baidu.com/story_of_water/blog/item/e47e90b66556eafc30add19f.html一、加载地图数据1、 TAB的数据分为两种数据:地图数据(Layers)、属性数据(Datasets)。关系:不可分割的一个数据集的两部分. 2、 数据加载:GST文件由GeosetManager40.exe程序生成。在程序使用gsT文件:Map1.Geoset=Filepath+FileName 3、 问题:GST文件加载后,只是默认将地图数据加载,属性数据另外需要使用单独的命令进行加载,否则对属性数据的操作全部非法。加载:Map1.D 阅读全文

posted @ 2009-09-04 23:29 伍华聪 阅读(4775) 评论(0) 推荐(0) 编辑

MapXtreme2008中操作矢量符号和定制符号

摘要: 本文部分说明内容摘自网络文章,经过本人在MapXtreme2008中编写相关的演示例子,详细说明如何操作MapXtreme2008提供的矢量符号和定制符号。 MapXtreme 在其安装过程中自动安装 10 种 MapInfo 特定的 TrueType 字体。这些字体为用户提供了字形符号选择,范围涉及天气、房地产、交通等。字形编号为 Unicode 字符值,由于这些编号位于第一个 Unicode 字符代码块范围内,因此,与 ASCII 字符集兼容。 MapXtreme包含三种点样式:BitmapPointStyle (位图点样式)、FontPointStyle(字体点样式)和SimpleVectorPointStyle(简单矢量点样式)。 本文介绍这几种点样式的内容,并在MapXtreme2008编写相关的例子进行演示测试。 阅读全文

posted @ 2009-09-04 23:27 伍华聪 阅读(3072) 评论(0) 推荐(2) 编辑

2009年8月25日

对原来的代码工具SharpCode进行改造,适应微软企业库的EnterpriseLibrary3.1以上版本

摘要: 原来的SharpCode是我为EnterpriseLibrary1.0即(2005版本)进行快速开发的的代码生成工具, 适用于Oracle, SqlServer, Access等数据库的代码生成。这款软件耗费了我不少心血,也是我开发共享软件的磨练作品,曾经也有很多客户跟随着我使用。 随着时间的变化,EnterpriseLibrary不断的版本升级,从1.0到目前的4.1,经历了不少变化,Enter... 阅读全文

posted @ 2009-08-25 22:45 伍华聪 阅读(4386) 评论(9) 推荐(4) 编辑

发布一个实体类属性生成小工具,给开发加点料

摘要: 做了很久的代码生成工具,基本上都是基于表生成实体类属性的,把数据库表的信息拿出来,然后之乎者也后生成一个标准的实体类,包含字段、属性、描述等东西。 是基于整个数据库生成整个框架代码的工具,如我的代码生成工具Database2Sharp,基本上能满足前期的框架代码生成。 不过后来在做一些非数据库的项目的实体类,还有一些不是基于表一一对应关系的实体类,写这些字段属性的代码就显得比较乏味,杀鸡用小刀可能比较好,于是花了点功夫,做了一个小工具,主要用来在开发中随意生成一些实体类的场合,现在免费提供出来,希望对大家有一点点用处。 阅读全文

posted @ 2009-08-25 21:10 伍华聪 阅读(5719) 评论(16) 推荐(2) 编辑

2009年8月21日

使用Enterprise Library操作Oracle的疑点难点总结

摘要: 我们知道,Microsoft patterns & practices小组开发的Enterprise Library是一款非常好的组件,其有很多个模块,包括数据访问、配置、加密、IOC容器、日志、异常处理等内容,其中数据访问模块是其中非常不错的一个数据访问组件,提供了对各种数据库操作的抽象封装,使用数据访问起来基本上是对各种数据库是透明的,最重要的是,简化了代码,提高了开发效率。 本文介绍Enterprise Library中的数据访问模块在操作Oracle过程中的一些经验总结,作为自己和博友做数据库访问的一个参考。 阅读全文

posted @ 2009-08-21 20:27 伍华聪 阅读(4145) 评论(3) 推荐(4) 编辑

2009年7月10日

WinForm界面开发之“OutLookBar”工具条

摘要: 在很多软件界面中,一个好的界面、方便的导航除了为软件增色不少外,也提高了用户体验,促进软件的良性发展,因为我们的软件一般需要有菜单、工具条、状态条等这些基本的东西,但是工具条本身应该是一些常用的快捷键,内容不能放置太多,否则会容易给客户凌乱的感觉。菜单条则可以分类,但是好像每次去点击,一步步深入,则显得比较麻烦。本篇我介绍一下一个很好的导航条OutlookBar控件。在我的2个版本的送水软件中,都用到了OutLookBar的工具条,使用的界面效果如下所示。 左边的工具条它们都是同一个控件来的,控件提供了一种类似Outlook方式的工具条,用来切换各种业务窗口,用上这个控件,肯定为您的程序增色不少。这个控件结合上面介绍的布局控件"WeifenLuo.WinFormsUI.Docking"(具体见文章WinForm界面开发之布局控件"WeifenLuo.WinFormsUI.Docking"的使用),那么效果会更好。下面介绍下如何在代码中使用这个Outlookbar工具控件。1、首先创建一个窗体,用来放置该控件,由于该空间不是一个可视化的控件,因此需要做一些特别的处理,如添加一个Imag 阅读全文

posted @ 2009-07-10 19:16 伍华聪 阅读(32441) 评论(47) 推荐(8) 编辑

2009年7月9日

WinForm界面开发之布局控件"WeifenLuo.WinFormsUI.Docking"的使用

摘要: 本篇介绍Winform程序开发中的布局界面的设计,介绍如何在我的共享软件中使用布局控件"WeifenLuo.WinFormsUI.Docking"。 布局控件"WeifenLuo.WinFormsUI.Docking"是一个非常棒的开源控件,用过的人都深有体会,该控件之强大、美观、不亚于商业控件。而且控件使用也是比较简单的。先看看控件使用的程序界面展示效果。我在几个共享软件都使用了该布局控件,我们先以“深田之星送水管理系统网络版”这款软件为例,介绍如何完成该界面的设计及显示的。 阅读全文

posted @ 2009-07-09 20:25 伍华聪 阅读(108671) 评论(61) 推荐(22) 编辑

2009年7月8日

WinForm界面开发之"SplashScreen控件"

摘要: 我们在开发桌面应用程序的时候,由于程序启动比较慢,往往为了提高用户的体验,增加一个闪屏,也就是SplashScreen,好处有:1、让用户看到加载的过程,提高程序的交互响应;2.可以简短展示或者介绍程序的功能或者展示Logo,给客户较深的印象。 本人在开发的共享软件中,对于启动比较慢的程序,也倾向于引入这个控件来展示下,先看看软件启动的时候的效果 阅读全文

posted @ 2009-07-08 17:17 伍华聪 阅读(27555) 评论(26) 推荐(11) 编辑

2009年7月7日

WinForm界面开发之“分页控件”

摘要: 在程序中,分页总是永远的话题,因为数据总是很多很多,分页展示在程序性能和数据查看感官方面得到很好的平衡,是一种良好的编程习惯和UI设计。 Winform中的分页控件可能没有Asp.net世界中的分页控件那么丰富多彩,不过也有不少的分页控件可以采用,各个人的可能都有一些不同的东西,一些好的东西。就我而言,我希望控件能够尽可能的多一些功能,耦合性低一些,例如我不想是基于存储过程的,因为我很多程序需要使用Access作为数据库,一般来说,我还希望有导出Excel数据的功能,还有打印预览功能,由于我的数据源表头,如实体类集合、表格内容绑定的时候,表头是英文的,我需要变为中文的,其他的功能有则更好。本篇介绍我在我的共享软件中大量使用的分页控件,如送水管理系统软件、病人资料管理软件等等,希望大家有兴趣的话,可以一起讨论使用该分页控件。以便整理吸收更多好的特性,共同学习。 阅读全文

posted @ 2009-07-07 21:06 伍华聪 阅读(33999) 评论(67) 推荐(8) 编辑

WinForm界面开发之“HTML内容编辑控件”

摘要: 做过了很多Winform的共享软件,对界面的设计有了一定的经验和积累,准备开一个“WinForm界面开发”系列文章,介绍下相关的Winform界面设计和相关控件的使用,促进相互交流,以获得更好的发展和了解。 在很多Winform程序中 ,我们可能需要HTML内容的所见即所得的编辑控件,如Asp.net中的FreeTextBox等控件样式的。 搜索了一下,发现很少这方面的控件,找了一个,好像是收费的,而且感觉一般,跳过,再找,然后发现CodeProject 上有一个不错的东西,拿过来进行修改一下,作为控件进行使用,效果还不错,我在QQ号码采集机邮件发送系统中使用它。 控件支持基本的HTML编辑操作,如文字、图片、排列(左对齐,右对齐,居中等)、项目符号、缩进调整等操作,另外控件支持右键菜单操作,常用的编辑功能以及查找、修改HTML、查看内容、插入HTML元素等。。。 阅读全文

posted @ 2009-07-07 13:31 伍华聪 阅读(13830) 评论(22) 推荐(5) 编辑

2009年6月29日

系统基础模块之通用字典项目管理

摘要: 我们在很多系统中,往往需要维护很多字典项目,一般的字典项目包含有一个大类名称、字典项目名称、字典值、排序、编辑者、编辑时间等字段,这些内容往往大同小异,如在车辆管理中,我们可能需要维护:车辆类型、车辆品牌、车辆用途、路途类别、用车评价、车辆状态等等信息,这些是很简单的数据,用来给业务功能使用的,是一个下拉列表形的数据,如果我们为每个这样的简单类型都创建一个表的话,那么有以下坏处: 1) 如果业务模块很多,就会产生很多这样的表,看起来不雅,维护也不方便,增加工作流。 2) 会产生很多页面代码(你需要维护界面内容展示和录入),也是看起来不雅,不方便维护,增加工作量。 3) 代码中调用处理也不好,记不住哪个是具体的字典信息了,太多。 以上总结一句话,就是做重复工作,就算有一键生成代码的工具,也是不好的。 如果采用一个公用的字典管理模块能够解决以上问题,那么整个世界就清净了,一句话,简单。 阅读全文

posted @ 2009-06-29 18:04 伍华聪 阅读(23699) 评论(12) 推荐(5) 编辑

2009年6月27日

浅谈多线程中数据的绑定和赋值

摘要: 我们知道,微软的.NET控件做了大量的工作,用起来还是不错的,一般的数据绑定或者赋值比较简单。如下所示 文本赋值: txtTest.Text = "abc"; 控件禁用: txtTest.Enable = false; 复杂的控件,如DataGridView的数据绑定,也是比较简单,只要数据源支持IListDataSource接口就可以了,如下所示 dataGridView1.DataSource=list;//list为DataTable或者ArrayList或者List等 在一般的单线程程序中,我们的数据绑定和UI的线程是一起的,那么绑定很正常,很OK,但是在多线程里面,如果你需要绑定这些数据,那么就要费一点周章了,呵呵. 如果你在不同于UI的另外一个线程里处理数据,当处理完毕,想绑定数据,那么应该如何呢,下面介绍几个方法给大家,一起分享一下,多线程控件中的数据绑定或者赋值等操作。 阅读全文

posted @ 2009-06-27 09:11 伍华聪 阅读(6777) 评论(10) 推荐(1) 编辑

2009年6月26日

C#进行MapX二次开发之图层操作

摘要: 特别说明,本文整理自一篇网络的文章《MapX从数据库读取数据形成新图层(C#)》在C#中实现MapX从数据库读取数据形成新图层分为两个问题:1. MapX从数据库读取数据形成新图层;2. 将DataTable转换为ADO的Recordset。这里的第二个问题是由第一个问题引起的,因为MapX是一个COM控件,而且它只支持ADO的数据访问方式,而C#编程时一般会使用ADO.NET方式,为此需要在两种... 阅读全文

posted @ 2009-06-26 23:35 伍华聪 阅读(8005) 评论(3) 推荐(0) 编辑

C#进行MapX二次开发之控件基本操作

摘要: 上篇介绍了MapX的部分基本使用代码,包括放大、缩小、缩放到初始大小(全图)、平移、矩形选择、圆形选择、箭头、打开图层对话框 、打开ActiveX属性对话框 、添加符号等基本操作代码,本篇继续探讨一些控件的基本操作,包括自定义工具使用完成测量距离和面积,导出地图图片,添加图层、查找图元和图层等操作。 MapX提供的标准工具,不同的工具将会使鼠标能够完成多种任务。例如,如果当前的工具设成 miLabelTool,那么当单击鼠标时,会在此特指的地图对象上放置标签。鼠标光标将根据正使用的工具更改形状。 如果需要一种 MapX 没有提供的工具栏按钮,可以使用 Map.CreateCustomTool 方法来创建自定义工具。创建自定义工具时,需要控制创建工具的“类型”,即:就是要选择此工具是否允许用户单击,或是单击并拖动来画线,或是单击并拖动来画矩形等等。也可以选择使用自定义工具时显示的光标。 阅读全文

posted @ 2009-06-26 20:40 伍华聪 阅读(11527) 评论(11) 推荐(2) 编辑

C#进行MapX二次开发之开篇介绍及资源汇总

摘要: 关于地理信息的开发有好多控件工具可以选择,GIS软件包括三家美国GIS开发商ESRI,Intergraph和MapInfo的软件产品,以及国产软件:MapGIS,GeoStar和Citystar,SuperMap等产品。另外还有一些边缘产品,是Web GIS的领域,不是纯粹的GIS产品,称之为地图应用平台可能较好,如Google公司的Google Maps、微软的Virtual Earth,国内的51地图,搜狗的地图等。 可能用的比较多的是ESRI了,他的Arc IMS或者ArcGIS Server市场占用率好像还比较高,产品系列也做的不错,目前好像版本是9.3;ESRI的产品我没有用过,不做评论,好像也是很不错的;比较喜欢的是MapInfo公司的产品,可能是很早就接触到的原因,如MapX,目前是5.X吧,还有就是他的MapXtreme,目前版本是MapXtreme 2008 (.net 和Java两个版本)。 这些GIS软件,提供了相似的功能集合,不同之处在于其具体的实现方式(如用户界面,操作流程),和操作效率(如速度、数据量)。这种相似性,也正说明了GIS技术的成熟。 阅读全文

posted @ 2009-06-26 20:36 伍华聪 阅读(8145) 评论(2) 推荐(0) 编辑

C#进行MapX二次开发之MapX基础知识

摘要: 本文主要介绍MapX开发的一些基础知识和代码,内容包括:MapX的主要技术特点、MapX的组件模型结构、基础使用代码介绍。 MapX的主要技术特点包括:以表(Table)的形式组织信息、图形对象、地图图层化、专题地图、内置ODBC、支持多种数据格式及其转换、二次开发工具MapBasic、集成二次开发能力。MapX的组件模型结构介绍了Datasets、Layers、Annotations三个对象集合。基础使用代码介绍:在MapX中,提供了标准的地图工具,可以很容易地利用常用的标准工具开发出方便易用的地理信息系统,而不必针对每一种地图操作都完全靠开发者自已编程。MapX内置了常用的标准地图工具,主要分为两类:一是对象创建工具,用来创建地图图元;另一类是选择工具。在选择工具的使用时,可以配合功能键Shift和Ctrl键。 阅读全文

posted @ 2009-06-26 20:36 伍华聪 阅读(15050) 评论(1) 推荐(2) 编辑

2009年6月20日

查询控件、分页控件、页面展示控件,我的Web开发三大得力助手

摘要: 在我的Database2Sharp中,Web界面生成的代码都集成了查询控件、分页控件、页面展示控件,这几个控件可以简化很多代码,而且统一了风格,熟悉使用后,对开发Web具有不可估量的作用。下面介绍下几个控件的功能和使用方法: 阅读全文

posted @ 2009-06-20 12:21 伍华聪 阅读(12398) 评论(31) 推荐(1) 编辑

导航