↑  ←  Описание функции


GUICtrlSetImage

Установить рисунок или иконку на элемент управления.

GUICtrlSetImage ( controlID, filename [, iconname [, icontype ]] )

Параметры

controlID Идентификатор элемента возвращаемый функцией GUICtrlCreate....
filename Имя файла изображения, который будет отображаться на элементе управления.
iconname [необязательный] Имя ресурса иконки, если файл содержит несколько иконок (*.dll). Может быть порядковый номер в виде отрицательного числа. Иначе -1.
icontype [необязательный] Выбор размера иконки :
    0 = маленькая (16x16)
    1 = (по умолчанию) обычная (32x32)
для TreeViewItem иконка состояния :
    2 = иконка для выбранного пункта
    4 = иконка для не выбранного пункта.

Возвращаемое значение

Успех:Возвращает 1.
Ошибка:Возвращает 0.

Примечания

Используйте Resource Hacker, чтобы узнать правильное имя иконки в файле.

Если используете элемент "кнопка" рисунок будет отображаться на кнопке. Рисунок можно установить на элементы Radio и Checkbox при использовании стиля $BS_PUSHLIKE. В обоих случая следует использовать стили $BS_ICON (для файлов ico, dll) или $BS_BITMAP (для файлов bmp). Если рисунок (bmp) размером 128x128, а размер элемента управления 64x64 тогда изображение будет отображаться обрезанным к центру.

!!! Если вы используете команду установки иконки/рисунка для первого TreeViewItem, тогда все другие TreeViewItem будут иметь указанный иконку/рисунок автоматически по умолчанию !!!
Если вы используете GUICtrlSetImage для TreeView или ListView тогда все пункты изменятся на указанную иконку/рисунок.

Передавая положительное число номера иконки - это эквивалентно строковому имени иконки.
Передавая отрицательное число номера иконки - это эквивалентно порядковому номеру иконки, независимо от имени, которое может быть числом. Некоторые Dll могут иметь значок извлекаемый только отрицательным числом.

См. также

GUICtrlCreatePic, GUICtrlCreateIcon, GUICtrlCreateButton, GUICtrlCreateCheckbox

Пример

#include <GUIConstantsEx.au3>
#include <ButtonConstants.au3>

Example()

Func Example()
    Local $msg

    GUICreate("Вставляет изображение") ; Создаёт окно в центре экрана

    GUICtrlCreateButton("кнопка с иконкой", 10, 20, 40, 40, $BS_ICON)
    GUICtrlSetImage(-1, "shell32.dll", 22) ; смотрите также примеры создания Button, Checkbox, Radio

    GUICtrlCreateButton("кнопка с рисунком bmp", 130, 10, 160, 160, $BS_PUSHLIKE + $BS_BITMAP)
    GUICtrlSetImage(-1, "oemlogo.bmp")

    GUISetState()

    ; Запускается цикл опроса GUI до тех пор пока окно не будет закрыто
    While 1
        $msg = GUIGetMsg()

        If $msg = $GUI_EVENT_CLOSE Then ExitLoop
    WEnd
EndFunc