Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для Creat0R

Must AutoIt


Сообщения: 3054
Благодарности: 1009

Профиль | Сайт | Отправить PM | Цитировать


Цитата FlatX007:
если панель не внизу - то окошко создаётся посередине десктопа »
А можно определить где панель находится, и соответственно пристыковывать GUI к нижнему правому краю:

Код: Выделить весь код
#include <GUIConstantsEx.au3>

$hGUI = GUICreate("_WinMoveAboveTaskBar Demo", 200, 500)
GUISetState(@SW_SHOW)

_WinStickToRightCorner($hGUI)

While 1
    Switch GUIGetMsg()
        Case $GUI_EVENT_CLOSE
            Exit
    EndSwitch
WEnd

Func _WinStickToRightCorner($hWin)
    Local $aWin_Pos = WinGetPos($hWin)
    Local $aClient_Size = WinGetClientSize($hWin)

    Local $iBorder_Width = ($aWin_Pos[2] - $aClient_Size[0])
    Local $iCaption_Height = ($aWin_Pos[3] - $aClient_Size[1])

    Local Const $SPI_GETWORKAREA = 48
    Local $stRECT = DllStructCreate("long;long;long;long")
    Local $SPIRet = DllCall("User32.dll", "int", "SystemParametersInfo", _
        "uint", $SPI_GETWORKAREA, "uint", 0, "ptr", DllStructGetPtr($stRECT), "uint", 0)
    If @error Or $SPIRet[0] = 0 Then Return SetError(1, 0, 0)

    Local $sRightArea = DllStructGetData($stRECT, 3)
    Local $sBottomArea = DllStructGetData($stRECT, 4)

    Local $iTop = (@DesktopHeight-(@DesktopHeight-$sBottomArea)-$aClient_Size[1]) - $iCaption_Height
    Local $iLeft = (@DesktopWidth-$aClient_Size[0]) - $iBorder_Width

    If $sRightArea < @DesktopWidth Then $iLeft -= (@DesktopWidth - $sRightArea)

    WinMove($hWin, "", $iLeft, $iTop)
EndFunc

-------
“Сделай так просто, как возможно, но не проще этого.”... “Ты никогда не решишь проблему, если будешь думать так же, как те, кто её создал.”

Альберт Эйнштейн

P.S «Не оказываю техподдержку через ПМ/ICQ, и по email - для этого есть форум. ©»

http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community


Отправлено: 22:21, 16-09-2009 | #5