源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

asp.net 图标提取以及图标转换的实例代码

  • 时间:2022-02-04 20:04 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:asp.net 图标提取以及图标转换的实例代码
[u]复制代码[/u] 代码如下:
using System; using System.Collections.Generic; using System.Drawing; using System.Windows.Forms; using System.IO; using System.Resources; using System.Reflection; using System.Runtime.InteropServices; namespace newExtIcon {     public partial class MainForm : Form     {            public Assembly asm = Assembly.GetExecutingAssembly();         public MainForm()         {             InitializeComponent();                }         void MainForm_Load(object sender ,EventArgs e)         {             lbl_display.Text ="No Work !";            }         void btnExtractClick(object sender, EventArgs e)         {             Random rd = new Random();             openFileDialog1.Filter="应用程序|*.dll;*.exe|所有程序|*.*";             if(openFileDialog1.ShowDialog()== DialogResult.OK)             {                 Icon icon = Icon.ExtractAssociatedIcon(openFileDialog1.FileName);                 FileStream fileStream = new FileStream("d:\\"+rd.Next(1,100000)+".ico",FileMode.Create);                 icon.Save(fileStream);                 fileStream.Close();                        lbl_display.Text="Work Done!";             }             else             {                 return ;             }         }         void BtnChangeClick(object sender, EventArgs e)         {             Size sz = new Size(32,32);             Random rd = new Random();             openFileDialog1.Filter="图片|*.jpg;*.png;*.bmp|所有程序|*.*";             //openFileDialog1.Filter="图片|*.jpg;*.png;*.bmp|应用程序|*.dll;*.exe";             if(openFileDialog1.ShowDialog()== DialogResult.OK)             {                 using(Bitmap bm = new Bitmap(openFileDialog1.FileName))                 {                     using(Bitmap IconBM = new Bitmap(bm,sz))                     {                         using(Icon icon_t = Icon.FromHandle(IconBM.GetHicon()))                         {                             FileStream fileStream = new FileStream("d:\\"+rd.Next(1,100000)+".ico",FileMode.Create);                             icon_t.Save(fileStream);                             fileStream.Close();                                lbl_display.Text="Work Done!";                                 }                     }                 }             }             else             {                 return ;             }         }         void Pic_Click(object sender, System.EventArgs e)         {             int int_index = Convert.ToInt32(((PictureBox)sender).Tag) ;             switch(int_index)             {                 case 1:                     this.Close();                     Application.Exit();                     break;                 case 2:                     WindowState = FormWindowState.Minimized;                     break;                 default :                     break;             }         }         void Pic_Hover(object sender,EventArgs e)         {             string  name_1 = "btn_close_hightligth.png";             string name_2 ="btn_mini_highlight.png";             Bitmap bm_1 = new Bitmap(asm.GetManifestResourceStream(name_1));             Bitmap bm_2 = new Bitmap(asm.GetManifestResourceStream(name_2));             int int_index = Convert.ToInt32(((PictureBox)sender).Tag) ;             switch(int_index)             {                 case 1:                     pictureBox1.BackgroundImage=bm_1;                     break;                 case 2:                     pictureBox2 .BackgroundImage = bm_2;                     break;                 default :                     break;             }         }         void Pic_Leave(object sender,EventArgs e)         {             string  name_1 = "btn_close_down.png";             string  name_2 ="btn_mini_down.png";             Bitmap bm_1 = new Bitmap(asm.GetManifestResourceStream(name_1));             Bitmap bm_2 = new Bitmap(asm.GetManifestResourceStream(name_2));             //GetMainfestResourceStream获取的是流             int int_index = Convert.ToInt32(((PictureBox)sender).Tag) ;             switch(int_index)             {                 case 1:                     pictureBox1.BackgroundImage=bm_1;                     break;                 case 2:                     pictureBox2 .BackgroundImage = bm_2;                     break;                 default :                     break;             }         }         private const int WM_NCLBUTTONDOWN = 0xA1;         private const int HTCAPTION = 2;         [DllImport("user32.dll")]         private static extern int SendMessage (int hwnd, int wMsg, int wParam, int lParam);         [DllImport("user32.dll")]         private static extern int ReleaseCapture();         private void form_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)         {             //为当前的应用程序释放鼠标捕获             ReleaseCapture();             //发送消息,让系统误以为你在标题拦上按下鼠标             SendMessage((int)this.Handle,WM_NCLBUTTONDOWN,HTCAPTION,0);         }     } }
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部