我想实现一个小球单独在桌面上运行, 但是一直弄不好,也问 过大家啦,还是弄不明白,主要就是一个圆形小球在桌面上,背景啊什么的都不要看到.各位弟兄多多帮下忙,谢谢,顺祝大伙国庆快乐!
解决方案 »
- winform如何实现上传功能
- 泛型调用泛型的问题
- GridView中的控件的数据绑定的问题
- 求助:引用ADOMD.NET会不会影响网站的性能?
- winform dataset.xsd文件 的 dataset ds, ds.ReadXml(xmlFile);为什么 没值,而new一个 DataSet dss=new DataSet();dss.ReadXml(xmlFile);则有值?
- DataGrid的分页与编辑
- 求通用数据访问类的源码!
- 在线等,控件捕捉鼠标事件延迟还是无法捕捉到??
- 一个将winform嵌入IE的问题,急。
- 关于datatable比较的问题!请教高手!
- C#在吗实现点击126登陆进去的“写信”,已经自动填写收件人,标题和内容?
- Web Service 里面的一个查询方法 返回DataTable对象 在WinForm里面在怎么接受?
1:TopMost = true;
2:设置Border = None;
3:设置窗口的region为你指定的圆形。
设置窗口的region为你指定的圆形,但是在桌面上出现的时候还是会出现我指定图形的背景,该怎么办呢?
SetWindowsRegion()这个函数,指定窗口的外形区域可以实现透明窗口。这种设置使得窗口的实际显示区域不会走出你指定的Region,不可能还在圆形之外显示任何内容的。你是用的什么方法显示什么指定图形?
一般图形都是在方框内的,我运行的时候也出现边框了,以下是我代码,但是没用到你说的SetWindowsRegion()这个函数,我用到的是异形图.但是我不知道要怎样修改其边框.使其看不到.
namespace yixingtu
{
public partial class MainForm : Form
{
public MainForm()
{
InitializeComponent();
}
private Region BmpRgn(Bitmap Picture, Color TransparentColor)
{
int nWidth = Picture.Width;
int nHeight = Picture.Height;
Region rgn = new Region(); rgn.MakeEmpty(); bool isTransRgn;//前一个点是否在透明区
Color curColor;//当前点的颜色
Rectangle curRect = new Rectangle();
curRect.Height = 1; int x = 0, y = 0; //逐像素扫描这个图片,找出非透明色部分区域并合并起来。 for (y = 0; y < nHeight; ++y)
{
isTransRgn = true; for (x = 0; x < nWidth; ++x)
{
curColor = Picture.GetPixel(x, y); if (curColor == TransparentColor || x == nWidth - 1)//如果遇到透明色或行尾
{
if (isTransRgn == false)//退出有效
{
curRect.Width = x - curRect.X;
rgn.Union(curRect);
}
}
else//非透明色
{
if (isTransRgn == true)//进入有效区
{
curRect.X = x;
curRect.Y = y;
} }//if curColor isTransRgn = curColor == TransparentColor; }//for x
}//for y return rgn;
}
private void Form1_Load(object sender, EventArgs e)
{ } private void button1_Click(object sender, EventArgs e)
{
this.Region = BmpRgn(new Bitmap("d:\\a.gif"), Color.FromArgb(0, 0, 0));
}
参考这个页面:
http://www.chenjiliang.com/Article/View.aspx?ArticleID=375&TypeID=79
http://www.chenjiliang.com/Article/View.aspx?ArticleID=374&TypeID=79介绍得很详细,有源代码实现。
然后设置窗体的背景色和transparentkey和窗体的背景色一样,还有窗体border为none
这样就只剩下你的图片了