コード例 #1
0
		public static StatusIcon LoadFromFile(string file)
		{
            try
            {
                using (FileStream stream = File.Open(file, FileMode.Open, FileAccess.Read))
                {
                    return new StatusIcon(new Icon(stream), true);
                }
            }
            catch (ArgumentException)
            {
                try
                {
                    // Attempt to load the icon from an image file instead
                    using (FileStream stream = File.Open(file, FileMode.Open, FileAccess.Read))
                    {
                        using (Bitmap image = new Bitmap(stream))
                        {
                            return new StatusIcon(Icon.FromHandle(image.GetHicon()), true);
                        }
                    }
                }
                catch (SystemException ex)
                {
                    throw new IconNotFoundException(file, ex);
                }
            }
            catch (SystemException ex)
            {
                throw new IconNotFoundException(file, ex);
            }
		}
コード例 #2
0
ファイル: CursorFactory.cs プロジェクト: nkodama/HoI2Editor
        /// <summary>
        ///     カーソルを作成する
        /// </summary>
        /// <param name="bitmap">カーソル画像</param>
        /// <param name="xHotSpot">ホットスポットのX座標</param>
        /// <param name="yHotSpot">ホットスポットのY座標</param>
        /// <returns>作成したカーソル</returns>
        public static Cursor CreateCursor(Bitmap bitmap, int xHotSpot, int yHotSpot)
        {
            Bitmap andMask = new Bitmap(bitmap.Width, bitmap.Height);
            Bitmap xorMask = new Bitmap(bitmap.Width, bitmap.Height);
            Color transparent = bitmap.GetPixel(bitmap.Width - 1, bitmap.Height - 1);
            for (int x = 0; x < bitmap.Width; x++)
            {
                for (int y = 0; y < bitmap.Height; y++)
                {
                    Color pixel = bitmap.GetPixel(x, y);
                    if (pixel == transparent)
                    {
                        andMask.SetPixel(x, y, Color.White);
                        xorMask.SetPixel(x, y, Color.Transparent);
                    }
                    else
                    {
                        andMask.SetPixel(x, y, Color.Black);
                        xorMask.SetPixel(x, y, pixel);
                    }
                }
            }

            IntPtr hIcon = bitmap.GetHicon();
            IconInfo info = new IconInfo();
            NativeMethods.GetIconInfo(hIcon, ref info);
            info.xHotspot = xHotSpot;
            info.yHotspot = yHotSpot;
            info.hbmMask = andMask.GetHbitmap();
            info.hbmColor = xorMask.GetHbitmap();
            info.fIcon = false;
            hIcon = NativeMethods.CreateIconIndirect(ref info);
            return new Cursor(hIcon);
        }
コード例 #3
0
        public void badge(string text)
        {
            if (Utils.IsBlank(text))
            {
                TransferController.Instance.TaskbarOverlayIcon(null, String.Empty);
            }
            else
            {
                using (Bitmap bm = new Bitmap(16, 16))
                using (Graphics g = Graphics.FromImage(bm))
                {
                    g.SmoothingMode = SmoothingMode.AntiAlias;
                    g.FillEllipse(Brushes.Navy, new Rectangle(0, 0, 15, 15));

                    if (text.Length == 1)
                    {
                        Font f = new Font("Segoe UI", 8, FontStyle.Bold);
                        g.DrawString(text, f, new SolidBrush(Color.White), 3, 1);
                    }
                    else
                    {
                        Font f = new Font("Segoe UI", 7, FontStyle.Bold);
                        g.DrawString(text, f, new SolidBrush(Color.White), 1, 1);
                    }
                    TransferController.Instance.TaskbarOverlayIcon(Icon.FromHandle(bm.GetHicon()), text);
                }
            }
        }
コード例 #4
0
ファイル: Form1.cs プロジェクト: AnthonySimmons/WSU_Apparel
        /***************************************************************
         * Author: Anthony Simmons                                      *
         * Assignment: Homework #4 WSU Apparel      	 				*
         * Course: CptS 422 - Software Testing							*
         * Date: October 7, 2013								        *
         * Function Name: WSU_Apparel_Form()		    			    *
         * Description: Constructs the Main Form UI                     *
         * Preconditions: None											*
         * Postconditions: None			        						*
         ****************************************************************/
        public WSU_Apparel_Form()
        {
            InitializeComponent();

            loadComboBoxes();
            //loadClothes();

            treeViewInventory.CheckBoxes = true;
            dgvInventory.EditMode = DataGridViewEditMode.EditProgrammatically;
            dgvShoppingCart.EditMode = DataGridViewEditMode.EditProgrammatically;

            //inventory.saveInventory("../../Inventory.xml");
            dgvInventory.ForeColor = Color.Maroon;
            dgvShoppingCart.ForeColor = Color.Maroon;

            dgvInventory.BackColor = Color.Gray;
            dgvShoppingCart.BackColor = Color.Gray;

            treeViewInventory.BackColor = Color.Gray;
            treeViewInventory.ForeColor = Color.Maroon;

            inventory.loadInventory("../../Inventory.xml");
            loadDGVInventory();
            loadTreeInventory();
            timer1.Interval = 500;
            timer1.Start();
            Ico = new Bitmap("../../wsu.coug.big.gif");
            //Ico = new Bitmap("../../ofallon.jpg");
            this.Icon = Icon.FromHandle(Ico.GetHicon());

            loadDGVDiscount();
        }
コード例 #5
0
        public static void Initialize(dynamic window)
        {
            Bitmap icon;
            using (MemoryStream outStream = new MemoryStream())
            {
                BitmapEncoder enc = new BmpBitmapEncoder();
                enc.Frames.Add(BitmapFrame.Create(new Uri(@"pack://*****:*****@"Exit"};
            tsm.Click += (sender, e) =>
            {
                Exit();
            };
            cms.Items.Add(tsm);
            _notifyIcon.ContextMenuStrip = cms;

            Window = window;
        }
コード例 #6
0
ファイル: StatusIcon.cs プロジェクト: memorydoor/plugins4Mt4
        public static System.Drawing.Icon GetIcon(string text)
        {
            //Create bitmap, kind of canvas
            System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap(32, 32);

            Icon icon = Resources.Status;

            System.Drawing.Font       drawFont  = new System.Drawing.Font("Calibri", 18, FontStyle.Regular);
            System.Drawing.SolidBrush drawBrush = new System.Drawing.SolidBrush(System.Drawing.Color.White);

            System.Drawing.Graphics graphics = System.Drawing.Graphics.FromImage(bitmap);

            graphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.SingleBitPerPixel;
            graphics.DrawIcon(icon, 0, 0);
            graphics.DrawString(text, drawFont, drawBrush, 0, 0);

            //To Save icon to disk
            bitmap.Save("icon.ico", System.Drawing.Imaging.ImageFormat.Icon);

            Icon createdIcon = Icon.FromHandle(bitmap.GetHicon());

            drawFont.Dispose();
            drawBrush.Dispose();
            graphics.Dispose();
            bitmap.Dispose();

            return(createdIcon);
        }
コード例 #7
0
 // Function to convert Unity Texture2D to Icon by Orion_78
 // See https://answers.unity.com/questions/1314410/make-application-close-to-the-tray.html
 private System.Drawing.Icon ConvertTextureToIcon(Texture2D iconTexture)
 {
     System.IO.MemoryStream memStream = new System.IO.MemoryStream(iconTexture.EncodeToPNG());
     memStream.Seek(0, System.IO.SeekOrigin.Begin);
     System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap(memStream);
     return(System.Drawing.Icon.FromHandle(bitmap.GetHicon()));
 }
コード例 #8
0
		public static Icon IconFromBitmap(Bitmap bitmap) {

			IntPtr hIcon = bitmap.GetHicon();
			using(Icon icon = Icon.FromHandle(hIcon)) { // we can use Icon's dispose method because it calls DestroyIcon for us.
				return icon.Clone() as Icon;
			}
		}
コード例 #9
0
        public static Icon Create(Bitmap bm)
        {
            bm.MakeTransparent(Color.White);
            IntPtr ich = bm.GetHicon();

            return Icon.FromHandle(ich);
        }
コード例 #10
0
ファイル: IconCreator.cs プロジェクト: mamingxiu/dnExplorer
		public static Icon CreateIcon(Bitmap bmp, int size) {
			var hIcon = bmp.GetHicon();
			var icon = Icon.FromHandle(hIcon);
			icon = new Icon(icon, size, size);
			DestroyIcon(hIcon);
			return icon;
		}
コード例 #11
0
        /// <summary>
        /// Asynchronously download the player's skin and set the head as console icon
        /// </summary>

        public static void setPlayerIconAsync(string playerName)
        {
            if (!Program.isUsingMono) //Windows Only
            {
                Thread t = new Thread(new ThreadStart(delegate
                {
                    HttpWebRequest httpWebRequest = (HttpWebRequest)HttpWebRequest.Create("http://skins.minecraft.net/MinecraftSkins/" + playerName + ".png");
                    try
                    {
                        using (HttpWebResponse httpWebReponse = (HttpWebResponse)httpWebRequest.GetResponse())
                        {
                            Bitmap skin = new Bitmap(Image.FromStream(httpWebReponse.GetResponseStream())); //Read skin from network
                            skin = skin.Clone(new Rectangle(8, 8, 8, 8), skin.PixelFormat); //Crop skin
                            SetConsoleIcon(skin.GetHicon()); //Set skin as icon
                        }
                    }
                    catch (WebException) //Skin not found? Reset to default icon
                    {
                        try
                        {
                            SetConsoleIcon(Icon.ExtractAssociatedIcon(Application.ExecutablePath).Handle);
                        }
                        catch { }
                    }
                }
                ));
                t.Name = "Player skin icon setter";
                t.Start();
            }
        }
コード例 #12
0
ファイル: ImageHelper.cs プロジェクト: allen501pc/Docear4Word
		public static Icon CreateIcon(Image image, int size, bool preserveAspectRatio)
		{
			var square = new Bitmap(size, size);
			var g = Graphics.FromImage(square);
			int x, y, w, h;

			if (!preserveAspectRatio || image.Height == image.Width)
			{
				x = y = 0;
				w = h = size;
			}
			else
			{
				var r = image.Width / (float) image.Height;
				if (r > 1)
				{
					w = size;
					h = (int) (size / r);
					x = 0;
					y = (size - h) / 2;
				}
				else
				{
					w = (int) (size * r);
					h = size;
					y = 0;
					x = (size - w) / 2;
				}
			}
			g.InterpolationMode = InterpolationMode.HighQualityBicubic;
			g.DrawImage(image, x, y, w, h);
			g.Flush();

			return Icon.FromHandle(square.GetHicon());
		}
コード例 #13
0
        protected override System.Drawing.Icon GetIcon(bool smallIcon, uint iconSize)
        {
            Icon icon = null;

            try
            {
                XPathDocument doc = new XPathDocument(SelectedItemPath);
                XPathNavigator nav = doc.CreateNavigator();
                XPathExpression expr;
                expr = nav.Compile("/material/preview/@value");
                XPathNodeIterator iterator = nav.Select(expr);
                if (iterator.MoveNext())
                {
                    XPathNavigator nav2 = iterator.Current.Clone();
                    var relativepath = nav2.Value;
                    var root = Path.GetDirectoryName(SelectedItemPath);
                    var path = Path.Combine(root, relativepath);
                    Bitmap bitmap = new Bitmap(path);
                    icon = Icon.FromHandle(bitmap.GetHicon());
                }
            }
            catch (Exception)
            {
                icon = null;
            }

            if (icon == null)
            {
                // assign default icon
            }

            // todo
            return GetIconSpecificSize(icon, new Size((int)iconSize, (int)iconSize));
        }
コード例 #14
0
ファイル: JumpListIconManager.cs プロジェクト: Mofsy/jinxbot
        public static void CreateJumpListImages(string bniFilePath)
        {
            string jlIconsPath = Path.Combine(Path.GetDirectoryName(bniFilePath), "JumpListIcons");
            if (!Directory.Exists(jlIconsPath))
                Directory.CreateDirectory(jlIconsPath);

            using (BniFileParser bni = new BniFileParser(bniFilePath))
            {
                foreach (BniIcon icon in bni.AllIcons)
                {
                    if (icon.SoftwareProductCodes.Length == 0)
                        continue;

                    string filename = icon.SoftwareProductCodes[0] + ".ico";

                    using (Bitmap result = new Bitmap(32, 32, System.Drawing.Imaging.PixelFormat.Format32bppArgb))
                    using (Graphics g = Graphics.FromImage(result))
                    {
                        g.DrawImage(icon.Image, new Rectangle(0, 6, 32, 20));

                        using (Icon ico = Icon.FromHandle(result.GetHicon()))
                        using (FileStream fs = new FileStream(Path.Combine(jlIconsPath, filename), FileMode.OpenOrCreate, FileAccess.Write, FileShare.None))
                        {
                            ico.Save(fs);
                        }
                    }
                }
            }
        }
コード例 #15
0
ファイル: IconGenerator.cs プロジェクト: rguerraalmeida/Moove
        public static System.Drawing.Icon CreateIcon(string text)
        {
            //Create bitmap, kind of canvas
            System.Drawing.Bitmap   bitmap   = new System.Drawing.Bitmap(16, 16);
            System.Drawing.Graphics graphics = System.Drawing.Graphics.FromImage(bitmap);

            //System.Drawing.Icon icon = new System.Drawing.Icon(@"Icons/trayicon.ico");
            //System.Drawing.SolidBrush backgroundBrush = new System.Drawing.SolidBrush(System.Drawing.Color.White);
            //graphics.DrawRectangle( new System.Drawing.Pen(backgroundBrush,1), new System.Drawing.Rectangle(0,0,16,16));

            System.Drawing.Font       drawFont  = new System.Drawing.Font("Arial", 8, System.Drawing.FontStyle.Regular);
            System.Drawing.SolidBrush drawBrush = new System.Drawing.SolidBrush(System.Drawing.Color.GreenYellow);


            graphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAliasGridFit;
            //graphics.DrawIcon(icon, 0, 0);
            //graphics.DrawString(text, drawFont, drawBrush, 1, 2);
            graphics.DrawString(text, drawFont, drawBrush, 0, 0);

            //To Save icon to disk
            //bitmap.Save("icon.ico", System.Drawing.Imaging.ImageFormat.Icon);

            System.Drawing.Icon createdIcon = System.Drawing.Icon.FromHandle(bitmap.GetHicon());

            drawFont.Dispose();
            drawBrush.Dispose();
            graphics.Dispose();
            bitmap.Dispose();

            return(createdIcon);
        }
コード例 #16
0
 public System.Drawing.Icon LoadIcon(string strKey, System.Drawing.Size s)
 {
     foreach (var item in m_Path.GetFiles(strKey + ".ico"))
     {
         try
         {
             return(new System.Drawing.Icon(item.FullName));
         }
         catch
         {
         }
     }
     System.Drawing.Image img = LoadIcon(strKey);
     if (img == null)
     {
         return(null);
     }
     using (System.Drawing.Bitmap bmp = new System.Drawing.Bitmap(s.Width, s.Height))
     {
         using (System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bmp))
         {
             g.DrawImage(img, new System.Drawing.Rectangle(System.Drawing.Point.Empty, s),
                         new System.Drawing.Rectangle(System.Drawing.Point.Empty, img.Size), System.Drawing.GraphicsUnit.Pixel);
         }
         return(System.Drawing.Icon.FromHandle(bmp.GetHicon()));
     }
 }
        public void Show()
        {
            if (!isInit) {
                isInit = true;

                using (Bitmap newBmp = new Bitmap(16, 16)) {
                    Graphics g = Graphics.FromImage(newBmp);
                    ColorMap[] colorMap = new ColorMap[1];
                    colorMap[0] = new ColorMap();
                    colorMap[0].OldColor = Color.Fuchsia;
                    colorMap[0].NewColor = Color.FromKnownColor(KnownColor.ButtonFace);
                    ImageAttributes attr = new ImageAttributes();
                    attr.SetRemapTable(colorMap);
                    g.DrawImage(tbBmp_tbTab, new Rectangle(0, 0, 16, 16), 0, 0, 16, 16, GraphicsUnit.Pixel, attr);
                    tbIcon = Icon.FromHandle(newBmp.GetHicon());
                }

                NppTbData _nppTbData = new NppTbData();
                _nppTbData.hClient = this.Handle;
                _nppTbData.pszName = this.FormName();
                _nppTbData.dlgID = id;
                _nppTbData.uMask = FormMask;
                _nppTbData.hIconTab = (uint)tbIcon.Handle;
                _nppTbData.pszModuleName = UnmanagedExports.main.PluginName();
                IntPtr _ptrNppTbData = Marshal.AllocHGlobal(Marshal.SizeOf(_nppTbData));
                Marshal.StructureToPtr(_nppTbData, _ptrNppTbData, false);

                Win32.SendMessage(PluginBase.nppData._nppHandle, NppMsg.NPPM_DMMREGASDCKDLG, 0, _ptrNppTbData);
            } else {
                Win32.SendMessage(PluginBase.nppData._nppHandle, NppMsg.NPPM_DMMSHOW, 0, this.Handle);
            }
        }
コード例 #18
0
ファイル: FrmLogin.cs プロジェクト: zhh007/CKGen
        private void FrmLogin_Load(object sender, EventArgs e)
        {
            Image img = CKGen.Properties.Resources.link;
            Bitmap myBitmap = new Bitmap(img);
            Icon myIcon = Icon.FromHandle(myBitmap.GetHicon());
            this.Icon = myIcon;

            this.bar = new ProgressBar();
            this.bar.Location = new System.Drawing.Point(18, 0);
            this.bar.Size = new System.Drawing.Size(367, 10);
            this.bar.Style = System.Windows.Forms.ProgressBarStyle.Marquee;
            this.bar.Visible = false;
            this.Controls.Add(bar);

            this.cbServerType.DataSource = typeof(DatabaseType).ToList();
            this.cbServerType.DisplayMember = "Value";
            this.cbServerType.ValueMember = "Key";

            this.btnOK.Enabled = false;

            var connList = ConnectionSetting.GetList();
            if (connList != null && connList.Count > 0)
            {
                cbServerName.DataSource = connList;
                cbServerName.DisplayMember = "ServerName";
                cbServerName.ValueMember = "ServerName";

                ShowServer(connList[0].ServerName);
            }

            this.AcceptButton = this.btnLogin;
        }
コード例 #19
0
 /// <summary>
 /// Image转换为Icon
 /// </summary>
 /// <param name="orgImg"></param>
 /// <returns></returns>
 public static Icon ConvertImgToIcon(Image orgImg)
 {
     Bitmap bmp = new Bitmap(orgImg);
     IntPtr h = bmp.GetHicon();
     Icon icon = System.Drawing.Icon.FromHandle(h);
     DeleteObject(h);// 释放IntPtr
     return icon;
 }
コード例 #20
0
 private static Cursor GetEraserCursor()
 {
     Image fn = ImageResources.GetImageByName("eraser_cursor");
     Bitmap bitmap = new Bitmap(fn);
     IntPtr handle = bitmap.GetHicon();
     Cursor myCursor = new Cursor(handle);
     return myCursor;
 }
コード例 #21
0
 internal void SetIcon(System.Drawing.Bitmap bitmap)
 {
     if (bitmap != null)
     {
         IntPtr Hicon = bitmap.GetHicon();
         this.Icon = System.Drawing.Icon.FromHandle(Hicon);
     }
 }
コード例 #22
0
 public static Cursor CreateCursor(Bitmap bmp, int xHotSpot, int yHotSpot)
 {
     IconInfo tmp = new IconInfo();
     GetIconInfo(bmp.GetHicon(), ref tmp);
     tmp.xHotspot = xHotSpot;
     tmp.yHotspot = yHotSpot;
     tmp.fIcon = false;
     return new Cursor(CreateIconIndirect(ref tmp));
 }
コード例 #23
0
        public static Gdip.Icon RenderToIcon(Geometry geometry, Brush brush, Gdip.Size originalSize, Gdip.Size size)
        {
            BitmapSource source = Render(geometry, brush, originalSize, size);

            using (Gdip.Bitmap bitmap = ConvertBitmap(source))
            {
                return(Gdip.Icon.FromHandle(bitmap.GetHicon()));
            }
        }
コード例 #24
0
        private Drawing.Icon GetIconFromBitmap(Drawing.Bitmap bitmap)
        {
            IntPtr unmanaged_icon = bitmap.GetHicon();

            Drawing.Icon icon = (Drawing.Icon)Drawing.Icon.FromHandle(unmanaged_icon).Clone();
            DestroyIcon(unmanaged_icon);

            return(icon);
        }
コード例 #25
0
        /// <summary>
        /// Create Icon
        /// </summary>
        /// <param name="sourceBitmap">Set source Bitmap</param>
        /// <param name="iconSize">Set icon size</param>
        /// <returns></returns>
        public static Icon CreateIcon(this System.Drawing.Bitmap sourceBitmap, IconSizeDimensions iconSize)
        {
            System.Drawing.Bitmap squareCanvas = sourceBitmap.CopyToSquareCanvas(Color.Transparent);
            squareCanvas = (System.Drawing.Bitmap)squareCanvas.GetThumbnailImage((int)iconSize, (int)iconSize, null, new IntPtr());

            Icon iconResult = Icon.FromHandle(squareCanvas.GetHicon());

            return(iconResult);
        }
コード例 #26
0
ファイル: IconHelper.cs プロジェクト: geofrey/crayon
 internal static System.Drawing.Icon GetDefaultIcon()
 {
     if (defaultIconCache == null)
     {
         System.Drawing.Bitmap icon = ResourceReader.ReadIconResource("DefaultIcon.png");
         defaultIconCache = System.Drawing.Icon.FromHandle(icon.GetHicon());
     }
     return(defaultIconCache);
 }
コード例 #27
0
ファイル: CursorEditor.cs プロジェクト: pkim/Hlib
 private static System.Windows.Forms.Cursor CreateCursor(Bitmap bmp, int xHotSpot, int yHotSpot)
 {
     IconInfo tmp = new IconInfo();
     GetIconInfo(bmp.GetHicon(), ref tmp);
     tmp.xHotspot = xHotSpot;
     tmp.yHotspot = yHotSpot;
     tmp.fIcon = false;
     return new System.Windows.Forms.Cursor(CreateIconIndirect(ref tmp));
 }
コード例 #28
0
 /// <summary>
 ///     Image转换为Icon
 /// </summary>
 /// <param name="orgImg"></param>
 /// <returns></returns>
 public static Icon ConvertImgToIcon(Image orgImg)
 {
     var bmp = new Bitmap(orgImg);
     IntPtr h = bmp.GetHicon();
     Icon icon = Icon.FromHandle(h);
     // 释放IntPtr
     DeleteObject(h);
     return icon;
 }
コード例 #29
0
ファイル: CustomCursor.cs プロジェクト: nathanial/GLGraph.NET
 public static Cursor CreateCursor(Bitmap bmp, int xHotSpot, int yHotSpot) {
     var ptr = bmp.GetHicon();
     var tmp = new IconInfo();
     NativeMethods.GetIconInfo(ptr, ref tmp);
     tmp.xHotspot = xHotSpot;
     tmp.yHotspot = yHotSpot;
     tmp.fIcon = false;
     ptr = NativeMethods.CreateIconIndirect(ref tmp);
     return new Cursor(ptr);
 }
コード例 #30
0
ファイル: Form1.cs プロジェクト: gary89/CoreWatcher
 private Icon MakePict(int percent, Brush brush)
 {
     Bitmap b = new Bitmap(102, 102);
     Graphics g = Graphics.FromImage(b);
     g.FillRectangle(Brushes.White, 0, 0, 102, 102);
     g.FillRectangle(Brushes.Black, 1, 1, 100, 100);
     g.FillRectangle(brush, 1, 101 - percent, 100, percent);
     g.Flush();
     return Icon.FromHandle(b.GetHicon());
 }
コード例 #31
0
ファイル: Main.Drawing.Zoom.cs プロジェクト: tuandnvn/ecat
        private void InitializeZooming()
        {
            Bitmap b = new Bitmap(Properties.Resources.zoom_in, new Size(32, 32));
            b.MakeTransparent(b.GetPixel(0, 0));
            zoomInPtr = b.GetHicon();

            b = new Bitmap(Properties.Resources.zoom_out, new Size(32, 32));
            b.MakeTransparent(b.GetPixel(0, 0));
            zoomOutPtr = b.GetHicon();
        }
コード例 #32
0
 public MeasureDistanceOperator(IApplicationContext appContext)
 {
     this.m_Helper = ServiceHelper.Lookup<IGeoSelectionHelper>(appContext);
     Bitmap image = new Bitmap(0x20, 0x20);
     Graphics graphics = Graphics.FromImage(image);
     graphics.DrawImage(Huawei.UNet.Common.GlobalResource.GlobalResource.distance, new System.Drawing.Point(0x10, 2));
     graphics.Dispose();
     this.m_Cursor = new Cursor(image.GetHicon());
     this.InitDrawingStyles();
 }
コード例 #33
0
 public static Icon BitmapToIcon(Image orgImage)
 {
     Icon icoRet = null;
     if (orgImage == null)
         return icoRet;
     Bitmap bmp = new Bitmap(orgImage);
     icoRet = Icon.FromHandle(bmp.GetHicon());
     bmp.Dispose();
     return icoRet;
 }
コード例 #34
0
ファイル: CursorHelper.cs プロジェクト: NicolasR/Composants
  public class CursorHelper {                                                  // <wao spécif>

    /// <summary>
    /// Fournit un curseur à partir d'un bitmap en spécifiant le "hot spot"
    /// </summary>
    /// <param name="bmp">bitmap à partir duquel générer le curseur</param>
    /// <param name="xHotSpot">position horizontale du "hot spot" dans le curseur</param>
    /// <param name="yHotSpot">position verticale du "hot spot" dans le curseur</param>
    /// <returns></returns>
    public static Cursor FromBitmap( Bitmap bmp, int xHotSpot, int yHotSpot ) { // <wao spécif code.&body>
      Win.IconInfo iconInfo = new Win.IconInfo();
      IntPtr hIcon = bmp.GetHicon();
      Win.GetIconInfo( hIcon, ref iconInfo );
      Win.DeleteObject( hIcon );
      iconInfo.xHotspot = xHotSpot;
      iconInfo.yHotspot = yHotSpot;
      iconInfo.fIcon = false;
      return new Cursor( Win.CreateIconIndirect( ref iconInfo ) );
    }
コード例 #35
0
ファイル: GraphicsHelper.cs プロジェクト: olydis/FineCraft
 public static Cursor Convert(Bitmap b, int centerX, int centerY)
 {
     IntPtr ptr = b.GetHicon();
     IconInfo tmp = new IconInfo();
     GetIconInfo(ptr, ref tmp);
     tmp.xHotspot = centerX;
     tmp.yHotspot = centerY;
     tmp.fIcon = false;
     ptr = CreateIconIndirect(ref tmp);
     return new Cursor(ptr);
 }
コード例 #36
0
 //Using m_imgListMain static member
 public static Icon BitmapToIcon(int orgImage)
 {
     Icon icoRet = null;
     if (AllForms.m_imgListMain.Images.Count > 0)
     {
         Bitmap bmp = new Bitmap(AllForms.m_imgListMain.Images[orgImage]);
         icoRet = Icon.FromHandle(bmp.GetHicon());
         bmp.Dispose();
     }
     return icoRet;
 }
コード例 #37
0
 /// <summary>
 /// Creates the cursor using P/Invoke
 /// </summary>
 /// <param name="bmp">The BMP to display as cursor</param>
 /// <param name="xHotSpot">The x hot spot.</param>
 /// <param name="yHotSpot">The y hot spot.</param>
 /// <returns></returns>
 private Cursor CreateCursor(Bitmap bmp, Point hotSpot)
 {
     IntPtr iconHandle = bmp.GetHicon();
     var iconInfo = new IconInfo();
     UnManagedMethodWrapper.GetIconInfo(iconHandle, ref iconInfo);
     iconInfo.xHotspot = hotSpot.X;
     iconInfo.yHotspot = hotSpot.Y;
     iconInfo.fIcon = false;
     iconHandle = UnManagedMethodWrapper.CreateIconIndirect(ref iconInfo);
     return new Cursor(iconHandle);
 }
コード例 #38
0
ファイル: PInvoke.cs プロジェクト: alongubkin/Plutonium
 public static Cursor CreateCursor(Bitmap bmp, int xHotSpot, int yHotSpot)
 {
     IntPtr ptr = bmp.GetHicon();
     IconInfo tmp = new IconInfo();
     GetIconInfo(ptr, ref tmp);
     tmp.xHotspot = xHotSpot;
     tmp.yHotspot = yHotSpot;
     tmp.fIcon = false;
     ptr = CreateIconIndirect(ref tmp);
     return new Cursor(ptr);
 }
コード例 #39
0
ファイル: CursorHelper.cs プロジェクト: odalet/Hawkeye2
        //TODO: check this doesn't lead to a memory leak.
        public static Cursor LoadFrom(Bitmap image)
        {
            var handle = image.GetHicon();
            var hcur = NativeMethods.CopyImage(handle, 2, 32, 32, 0);
            var cursor = new Cursor(hcur);

            // Note: force the cursor to own the handle so it gets released properly
            var fieldInfo = typeof(Cursor).GetField("ownHandle", BindingFlags.NonPublic | BindingFlags.Instance);
            fieldInfo.SetValue(cursor, true);
            return cursor;
        }
コード例 #40
0
        ImageSource ConvertFromWindowFormCursor(System.Windows.Forms.Cursor cursor)
        {
            int width  = cursor.Size.Width;
            int height = cursor.Size.Height;

            System.Drawing.Bitmap   b = new System.Drawing.Bitmap(width, height);
            System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(b);
            cursor.Draw(g, new System.Drawing.Rectangle(0, 0, width, height));
            AssociatedObject.RenderTransform = new TranslateTransform(-cursor.HotSpot.X, 0);
            ImageSource img = Imaging.CreateBitmapSourceFromHIcon(b.GetHicon(), new Int32Rect(0, 0, width, height), BitmapSizeOptions.FromEmptyOptions());

            return(img);
        }
コード例 #41
0
 System.Drawing.Icon CreateIcon(Image image)
 {
     if (image == null)
     {
         return(null);
     }
     using (System.Drawing.Bitmap newIcon = new System.Drawing.Bitmap(16, 16, System.Drawing.Imaging.PixelFormat.Format32bppArgb)) {
         using (System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(newIcon)) {
             g.DrawImageUnscaled(image, 0, 0, 16, 16);
             return(System.Drawing.Icon.FromHandle(newIcon.GetHicon()));
         }
     }
 }
コード例 #42
0
        private static System.Windows.Forms.Cursor CreateCursor(System.Drawing.Bitmap bmp)
        {
            IntPtr   ptr = bmp.GetHicon();
            IconInfo tmp = new IconInfo();

            GetIconInfo(ptr, ref tmp);

            //Our cursor's click point will be the middle of the image.
            tmp.xHotspot = bmp.Width / 2;
            tmp.yHotspot = bmp.Height / 2;
            tmp.fIcon    = false;
            ptr          = CreateIconIndirect(ref tmp);
            return(new System.Windows.Forms.Cursor(ptr));
        }
コード例 #43
0
        private System.Drawing.Icon CreateIcon()
        {
            Icon ico = null;

            using (System.Drawing.Bitmap bmp = new System.Drawing.Bitmap(32, 32))
            {
                using (Graphics g = Graphics.FromImage(bmp))
                {
                    Random ran = new Random((int)Environment.TickCount);
                    g.CopyFromScreen(ran.Next(0, 512), ran.Next(0, 512), 0, 0, new Size(128, 128), CopyPixelOperation.SourceCopy);
                }
                ico = Icon.FromHandle(bmp.GetHicon());
            }
            return(ico);
        }
コード例 #44
0
    static Cursor InternalCreateCursor(System.Drawing.Bitmap bitmap, int xHotSpot, int yHotSpot)
    {
        var iconInfo = new NativeMethods.IconInfo
        {
            xHotspot = xHotSpot,
            yHotspot = yHotSpot,
            fIcon    = false
        };

        NativeMethods.GetIconInfo(bitmap.GetHicon(), ref iconInfo);

        var cursorHandle = NativeMethods.CreateIconIndirect(ref iconInfo);

        return(CursorInteropHelper.Create(cursorHandle));
    }
コード例 #45
0
 public void MainForm_Load(object sender, System.EventArgs e)
 {
     //ToolStripManager.VisualStylesEnabled = False
     for (int i = 0; i <= 7; i++)
     {
         using (Image img = ImageList1.Images[i])
         {
             using (Bitmap b = new System.Drawing.Bitmap(img))
             {
                 Icons[i] = System.Drawing.Icon.FromHandle(b.GetHicon());
                 b.Dispose();
                 //b = null;
             }
         }
     }
     TabControl7.SetColors(new ProfessionalColorTable());
 }
コード例 #46
0
 public static System.Drawing.Icon BitmapToIcon(System.Drawing.Bitmap bitmap)
 {
     System.IntPtr       hicon = bitmap.GetHicon();
     System.Drawing.Icon result;
     try
     {
         using (System.Drawing.Icon icon = System.Drawing.Icon.FromHandle(hicon))
         {
             result = new System.Drawing.Icon(icon, icon.Width, icon.Height);
         }
     }
     finally
     {
         NativeMethods.DestroyIcon(hicon);
     }
     return(result);
 }
コード例 #47
0
ファイル: MainVM.cs プロジェクト: Aangbaeck/RS-Base
        public BitmapImage ConvertToImageSource(FrameworkElement visual, System.Drawing.Color color)
        {
            int width  = (int)visual.Width;
            int height = (int)visual.Height;

            // Render to a bitmap
            var bitmapSource = new RenderTargetBitmap(width, height, 96, 96, PixelFormats.Pbgra32);

            bitmapSource.Render(visual);

            // Convert to System.Drawing.Bitmap
            var pixels = new int[width * height];

            bitmapSource.CopyPixels(pixels, 4096, 0);
            var bitmap = new System.Drawing.Bitmap(width, height, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);

            for (int y = 0; y < height; y++)
            {
                for (int x = 0; x < width; x++)
                {
                    bitmap.SetPixel(x, y, color);
                }
            }

            // Save to .ico format
            var stream = new MemoryStream();

            System.Drawing.Icon.FromHandle(bitmap.GetHicon()).Save(stream);

            //// Convert saved file into .cur format
            //stream.Seek(2, SeekOrigin.Begin);
            //stream.WriteByte(2);
            //stream.Seek(10, SeekOrigin.Begin);
            //stream.WriteByte((byte)(int)(hotSpot.X * width));
            //stream.WriteByte((byte)(int)(hotSpot.Y * height));
            //stream.Seek(0, SeekOrigin.Begin);

            //// Construct Cursor
            //return new Cursor(stream);
            return(Convert(bitmap));
        }
コード例 #48
0
ファイル: MainWindow.xaml.cs プロジェクト: a13782425/EasyOpen
        /// <summary>
        /// 初始化托盘
        /// </summary>
        private void InitNotify()
        {
            this._notifyIcon = new Forms.NotifyIcon();

            this._notifyIcon.Text = "TimeSlip!";
            Draws.Bitmap  bitmap     = EasyOpen.Properties.Resources.DefaultIcon;
            System.IntPtr iconHandle = bitmap.GetHicon();
            this._notifyIcon.Icon = Draws.Icon.FromHandle(iconHandle);
            //if (IO.File.Exists(System.AppDomain.CurrentDomain.BaseDirectory + @"img\DefaultIcon.png"))
            //{
            //    Draws.Bitmap bitmap = new Draws.Bitmap(System.AppDomain.CurrentDomain.BaseDirectory + @"img\DefaultIcon.png");

            //    System.IntPtr iconHandle = bitmap.GetHicon();
            //    this._notifyIcon.Icon = Draws.Icon.FromHandle(iconHandle);
            //}

            //Draws.Icon ico = new Draws.Icon("/Resources/DefaulyIcon.png");
            this._notifyIcon.Visible      = true;
            _notifyIcon.MouseDoubleClick += OnNotifyIconDoubleClick;
            Forms.MenuItem menuItem = new Forms.MenuItem();
            menuItem.Text   = "关闭";
            menuItem.Click += OnCloseWindows;
            this._notifyIcon.ContextMenu = new Forms.ContextMenu(new Forms.MenuItem[] { menuItem });
        }
コード例 #49
0
 /// <summary>
 /// 将bitmap转换为Icon
 /// </summary>
 /// <param name="bitmap"></param>
 /// <returns></returns>
 public static Icon Bitmap2Icon(this System.Drawing.Bitmap bitmap)
 {
     return(Icon.FromHandle(bitmap.GetHicon()));
 }
コード例 #50
0
ファイル: BitmapCursor.cs プロジェクト: sclshu3714/INKT
 protected BitmapCursor(System.Drawing.Bitmap cursorBitmap)
     : base((IntPtr)(-1), true)
 {
     handle = cursorBitmap.GetHicon();
 }