winform

Winform下的地图开发控件(GMap.NET)使用心得之三---批量解析地址经纬度坐标

非 Y 不嫁゛ 提交于 2020-01-01 21:29:08
在之前的文章中,介绍了两篇关于GMap.NET这样的开源地图控件,介绍了其一些基本信息以及如何进行初步的应用。 Winform下的地图开发控件(GMap.NET)使用心得 Winform下的地图开发控件(GMap.NET)使用心得之二 这是一个基于Winform的地图控件。该地图控件的定义如下: GMap.NET是一个强大、免费、跨平台、开源的.NET控件,它在Windows Forms 和WPF环境中能够通过Google, Yahoo!, Bing, OpenStreetMap, ArcGIS, Pergo, SigPac等实现寻找路径、地理编码以及地图展示功能,并支持缓存和运行在Mobile环境中。 GMap.NET是一个开源的GEO地图定位和跟踪程序。就像谷歌地图、雅虎地图一样,可以自动计算两地的距离,定位经纬度,与Google地图不同的是,该项目是建立在C#语言WinForm基础上的。可以对地图放大缩小,进行城市标记等。 本文主要介绍应用该控件来批量解析地址经纬度坐标。由于项目需要,我需要把数据库里面的4千多条地址信息解析出经纬度坐标,以供其他用途。经纬度坐标不要求非常精确,大体位置准确即可。如果人工通过Googlemap或者其他途径标准,工作量非常大,而且也很枯燥。由于之前接触过该控件,知道好像比较容易能够解析获取地址的经纬度坐标,那么我们把数据库信息逐一解析即可

Winform下的地图开发控件(GMap.NET)使用心得

≡放荡痞女 提交于 2020-01-01 21:28:52
我们先看看GMap.NET的定义: GMap.NET是一个强大、免费、跨平台、开源的.NET控件,它在Windows Forms 和WPF环境中能够通过Google, Yahoo!, Bing, OpenStreetMap, ArcGIS, Pergo, SigPac等实现寻找路径、地理编码以及地图展示功能,并支持缓存和运行在Mobile环境中。 GMap.NET是一个开源的GEO地图定位和跟踪程序。就像谷歌地图、雅虎地图一样,可以自动计算两地的距离,定位经纬度,与Google地图不同的是,该项目是建立在C#语言WinForm基础上的。可以对地图放大缩小,进行城市标记等。 GMap.NET的项目地址是http://greatmaps.codeplex.com/,我们可以下载相关的例子和源码进行学习和研究。我在Google上搜过相关的项目,好像介绍的文章不多,不过不影响这个控件的强大和易用。我们先看看它的界面截图: GMap.NET号称是可以支持很多种地图来源的,不过我试了一下,好像有部分是有些问题,最好的效果是GoogleMapChina,如上图所示。 我用GoogleMapChina可以放大到很详细的街道图,做了一个地址查询的例子,如下所示: 控件可以绘出两地的行车线路或者步行线路等,而且能够算出两地的距离,不过对于地理编码的解析好像不是很准确,也获取不到公交线路等信息

Winform下的地图开发控件(GMap.NET)使用心得

我们两清 提交于 2020-01-01 21:28:34
我们先看看GMap.NET的定义: GMap.NET是一个强大、免费、跨平台、开源的.NET控件,它在Windows Forms 和WPF环境中能够通过Google, Yahoo!, Bing, OpenStreetMap, ArcGIS, Pergo, SigPac等实现寻找路径、地理编码以及地图展示功能,并支持缓存和运行在Mobile环境中。 GMap.NET是一个开源的GEO地图定位和跟踪程序。就像谷歌地图、雅虎地图一样,可以自动计算两地的距离,定位经纬度,与Google地图不同的是,该项目是建立在C#语言WinForm基础上的。可以对地图放大缩小,进行城市标记等。 GMap.NET的项目地址是 http://greatmaps.codeplex.com/ ,我们可以下载相关的例子和源码进行学习和研究。我在Google上搜过相关的项目,好像介绍的文章不多,不过不影响这个控件的强大和易用。我们先看看它的界面截图: GMap.NET号称是可以支持很多种地图来源的,不过我试了一下,好像有部分是有些问题,最好的效果是GoogleMapChina,如上图所示。 我用GoogleMapChina可以放大到很详细的街道图,做了一个地址查询的例子,如下所示: 控件可以绘出两地的行车线路或者步行线路等,而且能够算出两地的距离,不过对于地理编码的解析好像不是很准确,也获取不到公交线路等信息

Winform下的地图开发控件(GMap.NET)使用心得

空扰寡人 提交于 2020-01-01 21:28:12
我们先看看GMap.NET的定义: GMap.NET是一个强大、免费、跨平台、开源的.NET控件,它在Windows Forms 和WPF环境中能够通过Google, Yahoo!, Bing, OpenStreetMap, ArcGIS, Pergo, SigPac等实现寻找路径、地理编码以及地图展示功能,并支持缓存和运行在Mobile环境中。 GMap.NET是一个开源的GEO地图定位和跟踪程序。就像谷歌地图、雅虎地图一样,可以自动计算两地的距离,定位经纬度,与Google地图不同的是,该项目是建立在C#语言WinForm基础上的。可以对地图放大缩小,进行城市标记等。 GMap.NET的项目地址是 http://greatmaps.codeplex.com/ ,我们可以下载相关的例子和源码进行学习和研究。我在Google上搜过相关的项目,好像介绍的文章不多,不过不影响这个控件的强大和易用。我们先看看它的界面截图: GMap.NET号称是可以支持很多种地图来源的,不过我试了一下,好像有部分是有些问题,最好的效果是GoogleMapChina,如上图所示。 我用GoogleMapChina可以放大到很详细的街道图,做了一个地址查询的例子,如下所示: 控件可以绘出两地的行车线路或者步行线路等,而且能够算出两地的距离,不过对于地理编码的解析好像不是很准确,也获取不到公交线路等信息

Winform下的地图开发控件(GMap.NET)使用心得之二

旧街凉风 提交于 2020-01-01 21:27:49
在上篇《 Winform下的地图开发控件(GMap.NET)使用心得 》中简单介绍了GMap.NET的控件基本情况,本篇开始介绍一下相关的代码操作。 其实目前GMap.NET提供的功能还不是很多,因此其演示的例子基本上都涉及到了,我在此基础上做了一些改进和运用,总结下功能代码吧。 首先使用控件前,需要初始化一些变量和事件,初始化代码如下所示: 代码 private void InitMapControl() { this .gMapControl1.Manager.Mode = AccessMode.ServerAndCache; this .gMapControl1.MapType = MapType.GoogleMapChina; this .gMapControl1.MaxZoom = 18 ; this .gMapControl1.MinZoom = 8 ; this .gMapControl1.Zoom = 13 ; this .gMapControl1.MouseMove += new MouseEventHandler(gMapControl1_MouseMove); this .gMapControl1.DoubleClick += new EventHandler(gMapControl1_DoubleClick); this .gMapControl1

WinForm 圆形时钟

五迷三道 提交于 2020-01-01 13:27:42
   DateTime Time; private void timer_Tick(object sender,EventArgs e) { this.Time = DateTime.Now; Invalidate(); } private void UCTime_Paint(object sender, PaintEventArgs e) { Graphics dc = e.Graphics; Pen pn = new Pen(ForeColor); SolidBrush br = new SolidBrush(ForeColor); InitCoordinates(dc); //设置绘画的坐标变换 DrawDots(dc, br); //绘画范围界面 DrawHourHand(dc, pn); //绘画时针,计算旋转的度数 DrawMinuteHand(dc, pn); //绘画分针 DrawSecondHand(dc, pn); //绘画秒针 } /// <summary> /// 设置绘画的坐标变换 /// </summary> /// <param name="dc">画布</param> protected void InitCoordinates(Graphics dc) { if (this.Width == 0 || this.Height == 0)

winform 实现分页功能

丶灬走出姿态 提交于 2020-01-01 13:27:23
public partial class DisplayMessage : Form { #region 分页 public delegate int EventPagingHandler(EventPagingArg e); PageData pd = new PageData(); public event EventPagingHandler EventPaging; /// <summary> /// 每页显示记录数 /// </summary> private int _pageSize = 10; /// <summary> /// 每页显示记录数 /// </summary> public int PageSize { get { return _pageSize; } set { _pageSize = value; GetPageCount(); } } private int _nMax = 0; /// <summary> /// 总记录数 /// </summary> public int NMax { get { return _nMax; } set { _nMax = value; GetPageCount(); } } private int _pageCount = 1; /// <summary> /// 页数=总记录数/每页显示记录数 ///

winform 实现打印功能

Deadly 提交于 2020-01-01 13:26:47
本文转自: http://www.cnblogs.com/freeliver54/archive/2010/10/20/1856978.html 学习c# winform 打印 参照了网络上诸多资源 效果示意: 操作步骤: 1、新建winform项目及创建窗体 2、拖取 打印 相关控件 PageSetupDialog 、 PrintDialog 、 PrintDocument 、PrintPreviewDialog 3、设置上述控件的Document属性为相应的PrintDocument 4、设置按钮等控件 及 添加相应按钮事件 5、示意代码如下 代码 public partial class Form3 : Form { public Form3() { InitializeComponent(); this .printDocument1.OriginAtMargins = true ; // 启用页边距 this .pageSetupDialog1.EnableMetric = true ; // 以毫米为单位 } // 打印设置 private void btnSetPrint_Click( object sender, EventArgs e) { this .pageSetupDialog1.ShowDialog(); } // 打印预览 private void

winform项目——仿QQ即时通讯程序17:互发消息及消息的本地存储

耗尽温柔 提交于 2020-01-01 02:52:14
上一篇文章我们实现了会话列表的存储,本篇文章将实现最后的功能:好友间互发消息及本地消息记录的存储。这是CIM项目系列的最后一篇文章,因为实现这个功能之后整个项目基本上就算完成了。 首先,我们需要在Chat聊天窗体中进行用户初始化。 我们双击会话或者好友列表中的panel的时候,弹出Chat聊天窗体,同时利用控件的tag属性将对方账号传了过去。窗体上方有一个现实用户昵称的label需要初始化。 private void Chat_Load(object sender, EventArgs e) { //上方的昵称标签 lbl_nickName.Text = Common.majorForm.getNickName(this.Tag.ToString()); //消息记录文件的路径 以账号为唯一标识符 msgFilePath = "record_"+this.Tag.ToString()+".db"; //初始化聊天记录 initChatRecord(); //让输入框获取焦点 tb_content.Focus(); } 这是最终的代码,先不用管其余的代码,后面会用到。 其次,我们实现发送按钮的点击事件: private string msgFilePath; private void btn_send_Click(object sender, EventArgs e) { //1

C# Winform程序获取外网IP地址

不打扰是莪最后的温柔 提交于 2019-12-31 05:36:19
string strUrl = "http://www.ip138.com/ip2city.asp"; //获得IP的网址了 Uri uri = new Uri(strUrl); System.Net.WebRequest wr = System.Net.WebRequest.Create(uri); System.IO.Stream s = wr.GetResponse().GetResponseStream(); System.IO.StreamReader sr = new System.IO.StreamReader(s, Encoding.Default); string all = sr.ReadToEnd(); //读取网站的数据 int i = all.IndexOf("[") + 1; string tempip = all.Substring(i, 15); string ip = tempip.Replace("]", "").Replace(" ", "");//找出ip 来源: https://www.cnblogs.com/cappuccino/p/5270928.html