Open topic with navigation
WTSupported in traditional Synergy on Windows
WNSupported in Synergy .NET on Windows
status = %U_ICON(D_ICONSET, filename, index[, window_id]) status = %U_ICON(D_ICONCOUNT, filename, count)
xcall U_ICON(D_ICONSET, filename, index[, window_id]) xcall U_ICON(D_ICONCOUNT, filename, count)
On Windows, true (1) if the icon file exists and contains icons, or false (0) if the icon file does not exist or contains no icons. On UNIX and OpenVMS, always returns false. (^VAL)
Set an icon. (n)
The name of the file that contains the icon to set or the icons to count. (a)
The icon index for D_ICONSET (l‑based). (n)
(optional) The ID of the window. (n)
Get the count of icons in the file. (n)
The icon count returned from D_ICONCOUNT. (n)
%U_ICON sets an icon for a window or gets a count of icons in a file.
Filename can be an .ico file, a DLL, an executable program (.exe), or a bitmap image (.bmp). You can use environment variables in filename.
In Synergy .NET, this routine works only for the container window, and it uses only the first icon in the icon file. It ignores the index and count arguments (though you still must pass them) and the window_id argument.
Setting an icon for a window
To set an icon for a window, pass D_ICONSET and the index (1‑based) for the icon (i.e., pass the icon’s position in the file). An index value of 0 will set the icon to the default Windows system icon. For an .ico file, you must pass 1 as index.
Window_id determines which window the icon will be applied to:
Getting a count of icons in a file
To get a count of icons in a file, pass D_ICONCOUNT and a variable as count to accept the returned count.
%L_ICON routine for setting a list icon
The following example sets the application icon to the third icon in a file named iconfil.dll. If the icon cannot be found, an error is displayed.
if (.not.(%u_icon(D_ICONSET, "iconfil.dll", 3))) xcall u_message("Could not set icon")