随笔分类 -  【Dotnet Technology】

摘要:本文介绍DotNet中PictureBox控件实现重叠透明效果示例。 关于一般的透明效果,这里不多说,相信很多人都会,这种透明效果一般需要设置父控件,是子控件相对于父控件的透明。那么很多人可能更为关心的是多个控件之间的透明效果,比如窗体上有多个PictureBox控件,当这些PictureBox重叠时如何设置为透明,这样的效果估计在项目中会经常用到。本文的目的就是要给大家提供几种参考解决方案。 一般地,在.NET中,多个控件之间重叠时是不会实现透明效果的。如下图所示: 下面开始介绍这几种解决方案: 第一种方案:记录不透明图片的路径,再设置透明效果。参考代码如下: ///<summa... 阅读全文
posted @ 2012-04-04 01:31 Healtheon 阅读(13873) 评论(26) 推荐(15) 编辑
摘要:GetHashCode 方法适用于哈希算法和诸如哈希表之类的数据结构。 GetHashCode 方法的默认实现不保证针对不同的对象返回唯一值。而且,.NET Framework 不保证 GetHashCode 方法的默认实现以及它所返回的值在不同版本的 .NET Framework 中是相同的。因此,在进行哈希运算时,该方法的默认实现不得用作唯一对象标识符。 GetHashCode 方法可以由派生类型重写。值类型必须重写此方法,以提供适合该类型的哈希函数和在哈希表中提供有用的分布。为了获得最佳结果,哈希代码必须基于实例字段或属性(而非静态字段或属性)的值。 用作 Hash... 阅读全文
posted @ 2011-04-19 12:20 Healtheon 阅读(1220) 评论(0) 推荐(1) 编辑
摘要:本文讲解如何使用多线程安全地使用.NET 中的Windows窗体控件。 使用多线程提高 Windows 窗体应用程序的性能时,必须注意以线程安全方式调用控件。 访问 Windows 窗体控件本质上不是线程安全的。如果有两个或多个线程操作某一控件的状态,则可能会迫使该控件进入一种不一致的状态。还可能出现其他与线程相关的 bug,包括争用情况和死锁。确保以线程安全方式访问控件非常重要。.NET Framework 有助于在以非线程安全方式访问控件时检测到这一问题。在调试器中运行应用程序时,如果创建某控件的线程之外的其他线程试图调用该控件,则调试器会引发一个 InvalidOperation... 阅读全文
posted @ 2011-04-19 12:08 Healtheon 阅读(4443) 评论(1) 推荐(1) 编辑
摘要:本文主要是获得鼠标当前所在位置像素的颜色。说到这里,大家可能还记得PhotoShop中吸管的功能,就是在图片的某一位置点击一下,就能获得那个位置像素的颜色。此程序和吸管的功能相似,不妨先来看下运行效果图: 其代码如下所示:class CallWin32GDIAPI{ private const int SM_CXSCREEN = 0x00000000;//屏幕的横坐标 private const int SM_CYSCREEN = 0x00000001;//纵坐标 private const int SRCCOPY = 0x00CC0020;/... 阅读全文
posted @ 2011-04-12 23:11 Healtheon 阅读(2078) 评论(0) 推荐(1) 编辑
摘要:在创建了DataSet对象以后,下面的事情就是向DataSet数据集中填充数据。目前最常用的数据填充方式是和数据库结合起来使用的,使用DataAdapter对象填充DataSet。在本节中会介绍到这种方式,另外还会介绍其他两种方式。 详细讲解 1.把数据库中的数据通过DataAdapter对象填充DataSet。这种是在数据库程序开发过程中最常用到的数据填充方式。使用这种方式主要用到DataAdapter对象的Fill和FillSchema两种方法来对数据集进行填充。下面开始详细讲解如何将数据从数据库加载到DataSet中。 DataAdapter 填充DataSet的过程分为二步:... 阅读全文
posted @ 2011-04-12 23:10 Healtheon 阅读(15643) 评论(0) 推荐(1) 编辑
摘要:在做拖动小窗口程序时,遇到一个问题,怎么样对标题栏进行绘制,弄了半天才弄出来。和VC中原理差不多,但在.net下需要将API中的HDC通过Graphics.FromHdc()转换为System.Drawing.Graphics 程序运行结果如下: 代码如下: /// <summary> /// 对窗口的标题栏进行重绘和设置 /// </summary> /// <param name="hwnd"></param> /// <returns></returns> [DllImport("Use 阅读全文
posted @ 2011-04-12 23:04 Healtheon 阅读(5444) 评论(1) 推荐(1) 编辑