---
name: "wxIcon"
section: "3erl"
platform: "linux"
package: "erlang-manpages"
version: "1:25.2.3+dfsg-1+deb12u4"
release: "Debian 12 (Bookworm)"
platforms: ["linux"]
url: "https://new.carta.tech/wxIcon"
---

# wxIcon(3erl)

Functions for wxIcon class

## NAME

wxIcon - Functions for wxIcon class

## DESCRIPTION

An icon is a small rectangular bitmap usually used for denoting a minimized application.

It differs from a *wxBitmap* in always having a mask associated with it for transparent drawing. On some platforms, icons and bitmaps are implemented identically, since there is no real distinction between a *wxBitmap* with a mask and an icon; and there is no specific icon format on some platforms (X-based applications usually standardize on XPMs for small bitmaps and icons). However, some platforms (such as Windows) make the distinction, so a separate class is provided.

Remark: It is usually desirable to associate a pertinent icon with a frame. Icons can also be used for other purposes, for example with *wxTreeCtrl* and *wxListCtrl*. Icons have different formats on different platforms therefore separate icons will usually be created for the different environments. Platform-specific methods for creating a *wxIcon* structure are catered for, and this is an occasion where conditional compilation will probably be required. Note that a new icon must be created for every time the icon is to be used for a new window. In Windows, the icon will not be reloaded if it has already been used. An icon allocated to a frame will be deleted when the frame is deleted. For more information please see overview\_bitmap.

Predefined objects (include wx.hrl): ?wxNullIcon

See: Overview bitmap, Overview bitmap, *wxIconBundle*, *wxDC:drawIcon/3*, *wxCursor*

This class is derived (and can use functions) from: *wxBitmap*

wxWidgets docs: wxIcon

## DATA TYPES

```
wxIcon() = wx:wx_object()
```

## EXPORTS

```
new() -> wxIcon()
```

Default ctor.

Constructs an icon object with no data; an assignment or another member function such as *wxBitmap:loadFile/3* must be called subsequently.

```
new(Name) -> wxIcon()
```

```
new(Icon) -> wxIcon()
```

Types:

Icon = wxIcon()\

Copy ctor.

```
new(Name, Options :: [Option]) -> wxIcon()
```

Types:

Name = unicode:chardata()\
 Option = \
\
     {type, wx:wx\_enum()} \|\
\
     {desiredWidth, integer()} \|\
\
     {desiredHeight, integer()}\

Loads an icon from a file or resource.

See: *wxBitmap:loadFile/3*

```
copyFromBitmap(This, Bmp) -> ok
```

Types:

This = wxIcon()\
 Bmp = wxBitmap:wxBitmap()\

Copies *bmp* bitmap to this icon.

Under MS Windows the bitmap must have mask colour set.

See: *wxBitmap:loadFile/3*

```
destroy(This :: wxIcon()) -> ok
```

Destructor.

See overview\_refcount\_destruct for more info.

If the application omits to delete the icon explicitly, the icon will be destroyed automatically by wxWidgets when the application exits.

Warning: Do not delete an icon that is selected into a memory device context.
