資源簡介
模仿QQ聊天中的圖片查看器
1.支持鼠標縮放圖片;
2.圖片放大到大于查看器窗體時,可鼠標拖動查看局部放大圖片;
3.雙層窗體實現查看器半透明,圖片不透明效果

代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?System.ComponentModel;
using?System.Data;
using?System.Drawing;
using?System.Linq;
using?System.Text;
using?System.Windows.Forms;
namespace?ImageViewer
{
????public?partial?class?BackGroundForm?:?Form
????{
????????public?BackGroundForm()
????????{
????????????InitializeComponent();
????????}
????????///?
????????///?鼠標開始移動的點
????????///?
????????private?Point?m_StarPoint?=?Point.Empty;
????????///?
????????///?窗體移動過標識
????????///?
????????private?bool?FormIsMove?=?false;
????????///?
????????///?鼠標在當前窗體上方按下時
????????///?
????????///?
????????///?
????????private?void?BackGroundForm_MouseDown(object?sender?MouseEventArgs?e)
????????{
????????????//光標樣式變為手型
????????????Cursor?=?Cursors.Hand;
????????????//獲取鼠標當前位置
????????????m_StarPoint?=?e.Location;
????????}
????????///?
????????///?鼠標在當前窗體上方移動時
????????///?
????????///?
????????///?
????????private?void?BackGroundForm_MouseMove(object?sender?MouseEventArgs?e)
????????{
????????????//獲取移動距離
????????????int?_PointX?=?m_StarPoint.X?-?e.X;
????????????int?_PointY?=?m_StarPoint.Y?-?e.Y;
????????????if?(Cursor?==?Cursors.Hand)
????????????{
????????????????if?(this.Location.X?-?_PointX?<=?0)?_PointX?=?0;
????????????????if?(this.Location.Y?-?_PointY?<=?0)?_PointY?=?0;
????????????????this.Location?=?new?Point(this.Location.X?-?_PointX?this.Location.Y?-?_PointY);
????????????????FormIsMove?=?true;
????????????}
????????}
????????///?
????????///?鼠標在當前窗體上方釋放按鍵時
????????///?
????????///?
????????///?
????????private?void?BackGroundForm_MouseUp(object?sender?MouseEventArgs?e)
????????{
????????????Cursor?=?Cursors.Default;
????????????if?(!FormIsMove)
????????????{
????????????????this.OwnedForms[0].Close();
????????????????return;
????????????}
????????????FormIsMove?=?false;
????????????this.OwnedForms[0].Focus();
????????}
????????///?
????????///?窗體移動時
????????///?
????????///?
????????///?
????????private?void?BackGroundForm_Move(object?sender?EventArgs?e)
????????{
????????????this.OwnedForms[0].Left?=?this.Left;
????????????this.OwnedForms[0].Top?=?this.Top;
????????}
????}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????????875??2015-08-20?14:43??ImageViewer\ImageViewer.sln
?????文件???????32768??2015-09-06?17:01??ImageViewer\ImageViewer.suo
?????目錄???????????0??2015-09-01?16:34??ImageViewer\ImageViewer\
?????文件????????2706??2015-09-06?16:42??ImageViewer\ImageViewer\BackGroundForm.cs
?????文件????????2006??2015-09-06?16:42??ImageViewer\ImageViewer\BackGroundForm.Designer.cs
?????文件????????5817??2015-09-06?16:42??ImageViewer\ImageViewer\BackGroundForm.resx
?????目錄???????????0??2015-08-20?14:50??ImageViewer\ImageViewer\bin\
?????目錄???????????0??2015-09-06?16:56??ImageViewer\ImageViewer\bin\Debug\
?????文件??????794624??2015-09-06?16:56??ImageViewer\ImageViewer\bin\Debug\ImageViewer.exe
?????文件???????36352??2015-09-06?16:56??ImageViewer\ImageViewer\bin\Debug\ImageViewer.pdb
?????文件???????11592??2015-09-06?16:58??ImageViewer\ImageViewer\bin\Debug\ImageViewer.vshost.exe
?????目錄???????????0??2015-09-06?16:56??ImageViewer\ImageViewer\bin\Debug\Resources\
?????文件??????777835??2015-08-20?14:54??ImageViewer\ImageViewer\bin\Debug\Resources\Penguins.jpg
?????目錄???????????0??2015-08-20?14:50??ImageViewer\ImageViewer\bin\Release\
?????文件????????4397??2015-09-06?16:56??ImageViewer\ImageViewer\ImageViewer.csproj
?????文件???????14758??2015-09-06?17:01??ImageViewer\ImageViewer\ImageViewerForm.cs
?????文件????????3734??2015-09-01?17:30??ImageViewer\ImageViewer\ImageViewerForm.Designer.cs
?????文件????????5817??2015-09-01?17:30??ImageViewer\ImageViewer\ImageViewerForm.resx
?????目錄???????????0??2015-08-20?14:43??ImageViewer\ImageViewer\obj\
?????目錄???????????0??2015-08-20?14:43??ImageViewer\ImageViewer\obj\x86\
?????目錄???????????0??2015-09-06?16:56??ImageViewer\ImageViewer\obj\x86\Debug\
?????文件????????4501??2015-08-21?09:01??ImageViewer\ImageViewer\obj\x86\Debug\DesignTimeResolveAssemblyReferences.cache
?????文件????????6413??2015-09-06?16:56??ImageViewer\ImageViewer\obj\x86\Debug\DesignTimeResolveAssemblyReferencesInput.cache
?????文件?????????836??2015-09-06?16:56??ImageViewer\ImageViewer\obj\x86\Debug\GenerateResource.read.1.tlog
?????文件?????????922??2015-09-06?16:56??ImageViewer\ImageViewer\obj\x86\Debug\GenerateResource.write.1.tlog
?????文件?????????180??2015-09-06?16:56??ImageViewer\ImageViewer\obj\x86\Debug\ImageViewer.BackGroundForm.resources
?????文件????????2150??2015-09-06?16:58??ImageViewer\ImageViewer\obj\x86\Debug\ImageViewer.csproj.FileListAbsolute.txt
?????文件??????794624??2015-09-06?16:56??ImageViewer\ImageViewer\obj\x86\Debug\ImageViewer.exe
?????文件?????????180??2015-09-06?16:56??ImageViewer\ImageViewer\obj\x86\Debug\ImageViewer.ImageViewerForm.resources
?????文件???????36352??2015-09-06?16:56??ImageViewer\ImageViewer\obj\x86\Debug\ImageViewer.pdb
?????文件??????778279??2015-09-06?16:56??ImageViewer\ImageViewer\obj\x86\Debug\ImageViewer.Properties.Resources.resources
............此處省略11個文件信息
- 上一篇:基于opencv的三維重建代碼
- 下一篇:noip提高組模擬題6sz
評論
共有 條評論