madmasles
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору LaVas_ki Цитата: как ее сделать без заголовка, но что б можно было перетаскивать? |
Код: #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <StaticConstants.au3> #include <Array.au3> Opt('GUICloseOnESC', 0) $hGui = GUICreate('Opera', 250, 200, -1, -1, $WS_POPUPWINDOW, BitOR($WS_EX_TOOLWINDOW, $WS_EX_TOPMOST)) GUICtrlCreateLabel('Таскайте окно за любое место', 22, 50, 200, 20, $SS_CENTER, $GUI_WS_EX_PARENTDRAG) GUICtrlCreateLabel('Ctrl+1 - выход', 22, 90, 200, 20, $SS_CENTER, $GUI_WS_EX_PARENTDRAG) $nButton = GUICtrlCreateButton('', 0, 0, 1, 1) GUICtrlSetState(-1, $GUI_HIDE) Dim $AccelKeys[1][2] = [['^1', $nButton]] GUISetAccelerators($AccelKeys) $nButton_1 = GUICtrlCreateButton('WinGetPos', 75, 130, 100, 30) GUISetState() GUIRegisterMsg($WM_NCHITTEST, 'WM_NCHITTEST') While 1 WinSetOnTop($hGui, '', 1) $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE, $nButton Exit Case $nButton_1 $aPos = WinGetPos($hGui) WinSetOnTop($hGui, '', 0) _ArrayDisplay($aPos, $hGui) While WinExists('"' & $hGui & '"') Sleep(10) WEnd WinSetOnTop($hGui, '', 1) EndSwitch WEnd Func WM_NCHITTEST($hWnd, $msg, $wParam, $lParam) Local $iProc = DllCall('user32.dll', 'int', 'DefWindowProc', 'hwnd', $hWnd, 'int', _ $msg, 'wparam', $wParam, 'lparam', $lParam) If $iProc[0] = $HTCLIENT Then Return $HTCAPTION Return $GUI_RUNDEFMSG EndFunc ;==>WM_NCHITTEST |
| Всего записей: 1277 | Зарегистр. 25-09-2008 | Отправлено: 17:06 16-08-2011 | Исправлено: madmasles, 17:50 16-08-2011 |
|