RAD Studio VCL Reference
ContentsIndex
PreviousUpNext
TIcon.Create Constructor

Creates an instance of TIcon.

Pascal
constructor Create; override;
C++
virtual __fastcall TIcon();

Call Create to create an empty icon object. Once an image has been read into the icon from a file or stream, or by assigning another icon object, the icon can be drawn on a canvas or added to an image list. Do not create an icon object for setting the icon property of a form or picture. These objects create a TIcon object in their own constructors. Instead, use the LoadFromFile, LoadFromStream, or LoadFromClipboardFormat method on the TIcon object that you can obtain by reading the Icon property.  

C++ Examples: 

 

/*
This example converts a specified icon to a bitmap. To run 
this example, add an image, a button, and an Open dialog to 
a form. Name the button ConvertIcon2Bitmap, and add the 
following code as its OnClick event handler.
*/
void __fastcall TForm1::ConvertIcon2BitmapClick(TObject *Sender)
{
  OpenDialog1->DefaultExt = ".ICO";
  OpenDialog1->Filter = "icons (*.ico)|*.ICO";
  OpenDialog1->Options << ofOverwritePrompt << ofFileMustExist << ofHideReadOnly;
  if (OpenDialog1->Execute())
  {
    TIcon *pi = new TIcon();
    try
    {
      AnsiString as;
      pi->LoadFromFile(OpenDialog1->FileName);
      as = ChangeFileExt(OpenDialog1->FileName,".BMP");
      Image1->Width = pi->Width;
      Image1->Height = pi->Height;
      Image1->Canvas->Draw(0,0,pi);
      Image1->Picture->SaveToFile(as);
      ShowMessage(OpenDialog1->FileName + " Saved to " + as);
    }
    __finally
    {
      delete pi;
    }
  }
}

 

Delphi Examples: 

{
This example converts a specified icon to a bitmap. To run 
this example, add an image, a button, and an Open dialog to 
a form. Name the button ConvertIcon2Bitmap, and add the 
following code as its OnClick event handler.
} 
procedure TForm1.ConvertIcon2BitmapClick(Sender: TObject);
var 
  s : string;
  Icon: TIcon;
begin
  OpenDialog1.DefaultExt := '.ICO';
  OpenDialog1.Filter := 'icons (*.ico)|*.ICO';
  OpenDialog1.Options := [ofOverwritePrompt, ofFileMustExist, ofHideReadOnly ];
  if OpenDialog1.Execute then
  begin
    Icon := TIcon.Create;
    try
      Icon.Loadfromfile(OpenDialog1.FileName);
      s:= ChangeFileExt(OpenDialog1.FileName,'.BMP');
      Image1.Width := Icon.Width;
      Image1.Height := Icon.Height;
      Image1.Canvas.Draw(0,0,Icon);
      Image1.Picture.SaveToFile(s);
      ShowMessage(OpenDialog1.FileName + ' Saved to ' + s);
    finally
      Icon.Free;
    end;
  end;
end; 

 

Copyright(C) 2008 CodeGear(TM). All Rights Reserved.
What do you think about this topic? Send feedback!