這篇文章主要介紹了asp.net如何實現圖標提取以及圖標轉換,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
復制代碼 代碼如下:
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);
}
}
}
感謝你能夠認真閱讀完這篇文章,希望小編分享的“asp.net如何實現圖標提取以及圖標轉換”這篇文章對大家有幫助,同時也希望大家多多支持創新互聯網站建設公司,,關注創新互聯行業資訊頻道,更多相關知識等著你來學習!
當前標題:asp.net如何實現圖標提取以及圖標轉換-創新互聯
轉載來源:http://vcdvsql.cn/article18/ceocgp.html
成都網站建設公司_創新互聯,為您提供網站建設、搜索引擎優化、靜態網站、App開發、全網營銷推廣、網站收錄
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯