Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » EveryLang

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

monsoon



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору


Код:
 
;  Автор скрипта Irbis
;  http://forum.script-coding.com/viewtopic.php?id=10392&p=3  
 
#NoEnv
CoordMode Caret
CoordMode Tooltip
CoordMode Mouse
SetWinDelay -1
SetBatchLines -1
SetWorkingDir %A_ScriptDir%
Color:={"English":"0x0C0BC0", "Russian":"0xC00C0B"}
w0:=16, h0:=12, w1:=20, h1:=16, DX := 8, DY := 0
Gui, +AlwaysOnTop -Caption +ToolWindow +LastFound +HwndGuiHwnd
Gui,Add, Picture,x4 y4, % FileFromUrl("Data\Shadow.png", "http://s1.bild.me/bilder/240416/5476034Shadow.png")
Gui,Add, Picture,x0 y0 +HwndIconEn, % FileFromUrl("Data\En.png", "http://s1.bild.me/bilder/240416/3631999En.png")
Gui,Add, Picture,x0 y0 +HwndIconRu, % FileFromUrl("Data\Ru.png", "http://s1.bild.me/bilder/240416/5042572Ru.png")
Gui, Color, 0x3F3F3F
WinSet, TransColor, 0x3F3F3F
SetTimer, WatchCaret, 50
return
 
#If (id=GuiHwnd)
LButton::
   SetTimer, WatchCaret, Off
   MouseGetPos, x0, y0
   WinGetPos xc, yc,,, ahk_id %GuiHwnd%
   xc-=x0, yc-=y0
   While GetKeyState("Lbutton", "P") {
      sleep 10
      MouseGetPos, xn, yn
      WinMove, ahk_id %GuiHwnd%,, xc+xn, yc+yn
   }
   DX+=xn-x0, DY+=yn-y0
   if A_TimeSinceThisHotkey < 400
      PostMessage, 0x50, 2,,, A
   SetTimer, WatchCaret, On
Return
#If
 
WatchCaret:
   MouseGetPos,,,id
   Control, % (InputLayout()="English") ? "Hide" : "Show",,,ahk_id %IconRu%
   w := GetKeyState("CapsLock", "T") ? w1 : w0, h := GetKeyState("CapsLock", "T") ? h1 : h0
 
   (A_CaretX = "" && AccObjectFromPoint())
 
   Gui, % (x:=A_CaretX+DX)&&(y:=A_CaretY+DY)&&(GuiHwnd!=WinExist("A")) ? "Show" : "Hide"
          , x%x% y%y% w%w% h%h% NA
Return
 
; скачивание недостающих ресурсов.
FileFromUrl(to, from) {
   if !FileExist(to)
   try {
      Loop, Parse, to, \
      {
         path .= path ? "\" . A_LoopField : A_LoopField
         if (to != path)
            FileCreateDir, %path%
      } UrlDownloadToFile, %from%, %to%
   } catch {
      MsgBox, 16,, Ошибка скачивания: %to%
       ExitApp
   } Return to
}
 
InputLayout(window := "A") {
   If !(hWnd := WinExist(window))
      return
   WinGetClass, Class
   if (Class == "ConsoleWindowClass"){
       WinGet, consolePID, PID
       DllCall("AttachConsole", Ptr, consolePID)
       VarSetCapacity(buff, 16)
       DllCall("GetConsoleKeyboardLayoutName", Str, buff),
       DllCall("FreeConsole")
       langID := "0x" . SubStr(buff, -3)
   }
   Else langID := DllCall("GetKeyboardLayout", Ptr, DllCall("GetWindowThreadProcessId", Ptr, hWnd, UInt, 0, Ptr), Ptr) & 0xFFFF
   Size := (DllCall("GetLocaleInfo", UInt, langID, UInt, 0x1001, UInt, 0, UInt, 0) * 2)   ; LOCALE_SENGLANGUAGE := 0x1001
   VarSetCapacity(localeSig, Size, 0)
   DllCall("GetLocaleInfo", UInt, langID, UInt, 0x1001, Str, localeSig, UInt, Size)
   return localeSig
}
 
AccObjectFromPoint(ByRef _idChild_ = "", x = "", y = "")
{
   static VT_DISPATCH := 9, h := DllCall("LoadLibrary", Str, "oleacc", Ptr)
   
   (x = "" || y = "") ? DllCall("GetCursorPos", Int64P, pt) : pt := x & 0xFFFFFFFF | y << 32
 
   VarSetCapacity(varChild, 8 + 2*A_PtrSize, 0)
   if   DllCall("oleacc\AccessibleObjectFromPoint", Int64, pt, PtrP, pAcc, Ptr, &varChild) = 0
      Return ComObjEnwrap(VT_DISPATCH, pAcc, 1), _idChild_ := NumGet(varChild, 8, "UInt")
}
 
 

Всего записей: 1255 | Зарегистр. 30-01-2003 | Отправлено: 10:49 23-11-2015 | Исправлено: monsoon, 11:10 10-11-2016
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Программы » EveryLang


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru