Что нового

Как открыть файл при нажатии на GUICtrlCreatePic() ?

Пост номер 3 был отмечен как лучший ответ.

tonycstech

Новичок
Сообщения
53
Репутация
1
У меня код который просто выставляет фото на GUI
Код:
$Image = GUICtrlCreatePic($PATH, $GroupLeft + 5, $GroupTop + 20, Round($NewImageWidth), Round($NewImageHeight)) ;This one is global

Как зделать так что бы при нажатии левой мыши, происходило следующее
Код:
ShellExecute(GUICtrlRead($MainImagePath)) ;Надо что бы эта линия включалась при нажатии левой кнопки на фото.


Обычно я кнопку с права жму "CLICK TO VIEW" но она как бы не кнопка а как бы указание на то чтобы пользователь нажимал мышей на фото а не на кнопку GUI.
Как то вроде не логично.

screen.jpg
Идеи есть ?

Просить про функцию ZOOM не дерзну пока.

Спасибо.
 

joiner

Модератор
Локальный модератор
Сообщения
3 338
Репутация
574
Все то же самое, что и при нажатии на кнопку
 
Автор
T

tonycstech

Новичок
Сообщения
53
Репутация
1
Все то же самое, что и при нажатии на кнопку
Не пойдёт.
GUICtrlCreatePic это контроль возвращает идентификатор . За него надо как то ухватится а я не знаю как.
Следить за нажатием мыши будет работать но логика для этого будет запутаная и будет зависить от слишком многих параметров, позиция окна, размер окна, не дай Бог другое что то с верху, да и какок размер фото и в каком районе учитывать нажатие итд итп.

должна быть какаято функция которая позволит как то реагировать на идентификатор этого контроля или считыват его статус.
К сожалению GUICtrlGetMsg() функция не существует, иначе я бы использовал
$GUI_EVENT_PRIMARYDOWN
Пробывал менят GUIGetMsg() на GUIGetMsg($GUI_EVENT_ARRAY) но кнопки перестали реагировать. Даже закрыть окно не могу.

Код:
$GUIGetMsg = GUIGetMsg($GUI_EVENT_ARRAY)
    If $GUIGetMsg = $GUI_EVENT_CLOSE Then
        ExitFunction()
    EndIf

Надо чтото менять но незнаю что. Да и поможет ли оно вообше или нет. Скорее всего не.
Сообщение автоматически объединено:

Нашёл !! :blum::blum::blum::blum::blum:

Код:
$GUIGetMsg = GUIGetMsg()
If $GUIGetMsg = $image Then ShellExecute(GUICtrlRead($MainImagePath))


Почему раньше не работало, не знаю. Пробывал но почемуто отказывался,
Работает как надо.
 
Последнее редактирование:

joiner

Модератор
Локальный модератор
Сообщения
3 338
Репутация
574
ты нашел то же самое, что я и сказал. :smile:
внимательно читать справку нужно
 
Автор
T

tonycstech

Новичок
Сообщения
53
Репутация
1
ты нашел то же самое, что я и сказал. :smile:
внимательно читать справку нужно
Вы написали "Все то же самое, что и при нажатии на кнопку"
Я бы не понял что это значит без наглядного примера. Такой уж я тупой. Извените.

У меня батя такой. Чего не спроси как делать, он тебе "руками" или "тебе это не надо".
С вами точно научишся уму разуму, как и от него.
 
Верх