1

Тема: HTA: Перетаскивание окна не за заголовок

Если возникает желание убрать заголовок окна HTA приложения (чтобы он не занимал места), можно поставить caption=no и получить желаемый эффект. После этого необходимо обеспечить возможность перетакскивания окна мышью за любое место окна. Решение:

<html>
<hta:application
maximizeButton=no
border=no
scroll=no
selection=no
contextMenu=no
caption=no
showInTaskBar=no
singleinstance=yes
version=1.0
>
<body>Move: Right Click<br>Close: Alt+F4</body>
<script>
window.resizeTo(200, 300);

var x0, y0;

document.onmousemove=function () {
    if ((event.button!=0)&&(event.button!=1)){
    //if (event.button!=0){
        window.moveBy(event.x-x0, event.y-y0);
        return false;
    }
    document.body.style.cursor="auto";
}

document.onmousedown=function () {
    if (event.button!=1){
        document.body.style.cursor="move";
        x0=event.x; y0=event.y;
    }
}

</script>
</html>

Даное окно можно перетаскивать за любое место любой клавишей мыши, кроме первой (левой). Можно перетаскивать окно и вообще любой клавишей мыши (см. закомментированную строку в коде), но на многих системах перетаскивание левой клавишей мыши может приводить к ошибке "Отказано в доступе".
Авторы решения - wisgest и mozers.

Предложения в русском языке начинаются с большой буквы и заканчиваются точкой.
В названии ветки всегда должен быть указан язык программирования или среда исполнения скрипта, если это возможно.