简单qq表情浏览器开发记事<下>
之前开了一个头,现在把结尾补上简单qq表情浏览器开发记事 <上>
再发一次功能:
简单qq表情浏览器
功能:简单浏览一个文件夹下面的图片,图片可以拖拽
实现透明窗体,分页,图片位置变换等功能
大家时间宝贵,挑几个重点说,前辈们看完提要就看其它博文去吧,呵呵…
新学的童鞋可以下载过去,工程里面包过vs2008(Backup中)与10的
本文提要:
- 透明窗体的实现
- 点击窗体任何可见位置移动窗体
- 三角函数圆形排版
- PictureBox图片的拖拽图片的实现
- 简单的图片分页
<内容>:
<透明窗体的实现>
新建一个窗体,
设置FormBorderStyle属性为None,
设置BackColor为颜色X,然后设置TransparencyKey为X颜色,X即为透明色,
这里的X最好设置平时少见的颜色,我设置了Olive,一种橄榄色,
你可以运行窗口了,好吧,你发现你的窗口看不见了…
</透明窗体的实现>
<点击窗体任何可见位置移动窗体>
思路:
点击然后窗体可见位置,记录鼠标在窗体上的X,Y=BeginX,BeginY
设置mousedown = true;
如果mousedown 为真,那么窗体的Left,Top随鼠标的左右上下移动增减,代码:
/// <summary> /// 鼠标移动时发生,使隐形的窗体一起移动 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void pictureBoxAllowDrop1_MouseMove(object sender, MouseEventArgs e) { if (this.mousedown) { this.Left += e.X - this.BeginX; this.Top += e.Y - this.BeginY; } } /// <summary> /// 松开鼠标,设置为不可移动 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void pictureBoxAllowDrop1_MouseUp(object sender, MouseEventArgs e) { this.mousedown = false; }
</点击窗体任何可见位置移动窗体>
<三角函数圆形排版>
使用Math.Cos,Math.Sin三角函数求出圆形轨迹上等弧长所在点的相对与窗体的x,y的值,将图片放在点上达到圆形环绕放置图片,截图中为12等分的圆
/// <summary> /// 设置排列圆形 /// </summary> /// <param name="r">半径</param> /// <param name="count">图片的个数</param> private void findPoint(double r, int count) { double x0 = pictureBoxAllowDrop1.Left + pictureBoxAllowDrop1.Width / 2; double y0 = pictureBoxAllowDrop1.Top + pictureBoxAllowDrop1.Height / 2; double angle; for (int i = 0; i < count; i++) { angle = i*360 / count; point[i].X = (int)(x0 + r * Math.Cos(angle * Math.PI / 180)); point[i].Y = (int)(y0 + r * Math.Sin(angle * Math.PI / 180)); label1.Text += point[i].ToString() + "\t\n"; } }
截图
</三角函数圆形排版>
<PictureBox图片的拖拽图片的实现>
参考简单qq表情浏览器开发记事 <上>与源代码,不过代码有很多的不足,权作参考,不能当真
</PictureBox图片的拖拽图片的实现>
<简单的图片分页>
突然不知道分页该写什么,呵呵,这里注意一下项目中只设置了没个显示6个,大家运行源代码的时候不要误解什么,我想应该也不会
</简单的图片分页 >
</内容>
SeeSeeView 看看表情浏览器(当初想这名字好久,呵呵)
/Files/SongSharp/SSView_cs1.rar
收尾:
工作了快一年,匆匆忙忙,才觉得时间宝贵,这个项目是大二的作业,怀念大学里坐在空旷安静的工作室里面悠闲地写着代码,那是真正没有杂念的代码,只是因为喜欢,只是因为出于好玩,继续慢慢找回那种感觉吧,以前不喜欢Web,心里抵触,感觉那不是软件,那只是浏览器的对话,呵呵…现在,学着慢慢喜欢Web,发现也挺有意思的。把一串标记传给对方浏览器显示与运行,万法归宗,殊途同归,其实编程,想达到目的就是最好的表现。啰嗦了…
![](http://www.cnblogs.com/images/cnblogs_com/songsharp/SongSharp.jpg)
如有不足的地方欢迎提点!谢谢!
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。