Что нового

[Элементы GUI] Skin.au3 и drag and drop, действие кнопки по одному нажатию

reset86

Новичок
Сообщения
48
Репутация
0
Как сделать так, чтобы по нажатию на крестик один раз, происходило закрытие окошка (и другие действия, для других подобных кнопок). Сейчас так не работает из за drag and drop.
 

Вложения

  • test.zip
    1.2 КБ · Просмотры: 9
Сообщения
137
Репутация
-2
Вы действительно думаете, что кто-то на форуме будет качать неизвестный архив и запускать его содержимое у себя на компьютере?
по нажатию на крестик один раз, происходило закрытие окошка (и другие действия, для других подобных кнопок)
- это для кнопок свернуть окно и развернуть на весь экран?) Совет: добавьте код в теги
Код:
вот так
и сделайте более подробное описание функционала скрипта.
 
Автор
reset86

reset86

Новичок
Сообщения
48
Репутация
0
Сейчас приходится нажимать 2 раза на иконку, надо один, но при этом, чтобы функционал всего остального остался.
Код:
#NoTrayIcon
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Include <Skin.au3>
#include <MenuConstants.au3>

HotKeySet('{ESC}', '_Exit')
Global $bMouseJumpToCaption = False
Global $Button[2]

$hForm = GUICreate('', 183, 212, -1, -1, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_TOPMOST, $WS_EX_TOOLWINDOW))
GUIRegisterMsg($WM_LBUTTONDOWN, "WM_LBUTTONDOWN")
GUICtrlSetState(-1, $GUI_DISABLE)
GUISetFont(8, 400, 0, "Arial")

$Button[1] = _Skin_AddButton(152, 184, 17, 17, 'times-circle-o.png', 'times-circle-o.png', 'times-circle-o.png', 'times-circle-o.png', 'times-circle-o.png', 1)

GUISetBkcolor(0xaaaaaa)
WinSetTrans($hForm, '', 200)
_Skin_EnableFocus(1)

GUISetState()

While 1
_Skin_Helper($hForm)
$ID = GUIGetMsg()
Switch $ID

Case $Button[1]
Exit

EndSwitch
Sleep(10)
WEnd

Func _Exit()
Exit
EndFunc

Func WM_LBUTTONDOWN($hForm, $iMsg, $wParam, $lParam)
If BitAND(WinGetState($hForm), 32) Then
Return $GUI_RUNDEFMSG
EndIf
DllCall("user32.dll", "long", "SendMessage", "hwnd", $hForm, "int", $WM_SYSCOMMAND, "int", ($bMouseJumpToCaption ? $SC_MOVE : 0xF009), "int", 0)
EndFunc


У форума проблема с цифровой подписью (https), тема не была загружена.




Добавлено:
Сообщение автоматически объединено:

В общем проблема в Skin.au3.
Так же, к кнопкам не приделать GUICtrlSetCursor (-1, 0)
Решил проблему с помощью GDIPlus.au3, загружая png, а сверху накладывая на координаты изображения GUICtrlCreateLabel, получается "как бы статичная кнопка".
 

Вложения

  • times-circle-o.png
    times-circle-o.png
    313 байт · Просмотры: 68
Верх