Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Выпадающий список (http://forum.oszone.net/showthread.php?t=259905)

angel_lyucifer 03-05-2013 23:18 2144020

Выпадающий список
 
Привет всем! Проблема такая, у меня есть текстовый файл (timeout), мне нужно создать диалоговое окна в нём была бы одна кнопка (ок) и (выпадающий список) с пяти строками.
В первой строке (Время ожидания 5 секунд).
Во второй строке (Время ожидания 7 секунд).
В третей строке (Время ожидания 10 секунд).
В четвёртой строке (Время ожидания 13 секунд).
В пятой строке (Время ожидания 15 секунд).
Если выбираешь любую из этих пяти строк, то текстовом файле (timeout) записывается число 5, 7, 10 и тд...
Помогите пожалуйста, создать такой скрипт.

Iska 04-05-2013 01:07 2144078

читать дальше »
Код:

<html id="appHTML">
    <head>
        <meta charset="windows-1251">
        <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
        <meta http-equiv="Content-Language" content="ru">
        <title>Выбор времени ожидания</title>
        <hta:Application
            Icon = "MyIco.ico"
            Id="oHTA"
            ApplicationName="Выбор времени ожидания"
            Border="normal"
            BorderStyle="normal"
            Caption="yes"
            ContextMenu="no"
            InnerBorder="yes"
            MaximizeButton="no"
            MinimizeButton="yes"
            Navigable="no"
            Scroll="auto"
            ScrollFlat="no"
            Selection="no"
            ShowInTaskbar="yes"
            SingleInstance="yes"
            SysMenu="yes"
            Version="0.1"
            WindowState="normal"
        />
        <style type="text/css">
            BODY {
                font: x-small Verdana, Arial, sans-serif;
                color: WindowText;
                background-color: ButtonFace;
            }
            .Row {
                clear:both;
            }
            .Left {
                float:Left;
                clear:none;
            }
            .Right, SELECT {
                float:Right;
                clear:none;
            }
        </style>
       
        <script language="VBScript">
            Option Explicit
           
            '----------------------------------------------------------------------
            Sub OK_OnClick
                With document
                    .getElementByID("Wait").disabled        = True
                    .getElementByID("OK").disabled          = True
                   
                    .getElementByID("tagBody").style.cursor = "wait"
                End With
               
                setTimeout "SetOK", 0
            End Sub
            '----------------------------------------------------------------------
           
            '----------------------------------------------------------------------
            Sub SetOK()
                With CreateObject("Scripting.FileSystemObject").CreateTextFile("timeout.txt", True)
                    .WriteLine document.getElementByID("Wait").value
                    .Close
                End With
               
                With document
                    .getElementByID("Wait").disabled        = False
                    .getElementByID("OK").disabled          = False
                   
                    .getElementByID("tagBody").style.cursor = "auto"
                End With
            End Sub
            '----------------------------------------------------------------------
        </script>
    </head>
    <body id="tagBody" scroll="auto">
        <span Class="Row">
            <span Class="left"><span id="lblChoice">Время ожидания: </span></span>
            <span Class="right">
                <select name="Wait" id="Wait" size="1">
                    <option value="5" selected>5 секунд
                    <option value="7">7 секунд
                    <option value="10">10 секунд
                    <option value="13">13 секунд
                    <option value="15">15 секунд
                </select>
            </span>
        </span>
        <span Class="Row">
            <span Class="left"><span id="lblOK">После выбора времени ожидания нажмите кнопку "OK"</span></span>
            <span Class="right"><input type="Button" name="OK" value="OK"></span>
        </span>
    </body>
   
    <script language="VBScript">
        With window
            .resizeTo tagBody.scrollWidth + 25, tagBody.scrollHeight + 32
            .moveTo (.screen.availWidth - tagBody.offsetWidth) \ 2, (.screen.availHeight - tagBody.offsetHeight) \ 2
        End With
    </script>
</html>


Сохраните с расширением «.hta».

angel_lyucifer 04-05-2013 18:53 2144414

Спасибо скрипт работает, но есть два нюанса.
1 диалоговое окно слишком вытянутые (длинное).
2 при нажатие на кнопку (ок), диалоговое окно не закрывается а мне бы нужно чтобы окно патом закрывалось...

Цитата Iska:
<html id="appHTML">
<head> <meta charset="windows-1251">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<meta http-equiv="Content-Language" content="ru">
<title>Выбор времени ожидания</title>
<hta:Application Icon = "MyIco.ico"
Id="oHTA" ApplicationName="Выбор времени ожидания"
Border="normal"
BorderStyle="normal"
Caption="yes"
ContextMenu="no"
InnerBorder="yes"
MaximizeButton="no"
MinimizeButton="yes"
Navigable="no"
Scroll="auto"
ScrollFlat="no"
Selection="no"
ShowInTaskbar="yes"
SingleInstance="yes"
SysMenu="yes"
Version="0.1"
WindowState="normal" />
<style type="text/css">
BODY { font: x-small Verdana, Arial, sans-serif; color: WindowText; background-color: ButtonFace; } .Row { clear:both; } .Left { float:Left; clear:none; } .Right, SELECT { float:Right; clear:none; } </style> <script language="VBScript"> Option Explicit '----------------------------------------------------------------------
Sub OK_OnClick With document .getElementByID("Wait").disabled = True .getElementByID("OK").disabled = True .getElementByID("tagBody").style.cursor = "wait" End With setTimeout "SetOK", 0 End Sub '---------------------------------------------------------------------- '----------------------------------------------------------------------
Sub SetOK() With CreateObject("Scripting.FileSystemObject").CreateTextFile("timeout.txt", True) .WriteLine document.getElementByID("Wait").value .Close End With With document .getElementByID("Wait").disabled = False .getElementByID("OK").disabled = False .getElementByID("tagBody").style.cursor = "auto" End With End Sub '----------------------------------------------------------------------
</script>
</head>
<body id="tagBody" scroll="auto"> <span Class="Row"> <span Class="left">
<span id="lblChoice">Время ожидания: </span></span>
<span Class="right"> <select name="Wait" id="Wait" size="1">
<option value="5" selected>5 секунд
<option value="7">7 секунд
<option value="10">10 секунд
<option value="13">13 секунд
<option value="15">15 секунд
</select>
</span>
</span>
<span Class="Row">
<span Class="left">
<span id="lblOK">После выбора времени ожидания нажмите кнопку "OK"</span>/span>
<span Class="right"><input type="Button" name="OK" value="OK"></span> </span>

</body> <script language="VBScript"> With window .resizeTo tagBody.scrollWidth + 25, tagBody.scrollHeight + 32 .moveTo (.screen.availWidth - tagBody.offsetWidth) \ 2, (.screen.availHeight - tagBody.offsetHeight) \ 2 End With
</script>
</html>
»

Iska 04-05-2013 21:04 2144494

Пробуйте так:
читать дальше »
Код:

<html id="appHTML">
    <head>
        <meta charset="windows-1251">
        <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
        <meta http-equiv="Content-Language" content="ru">
        <title>Выбор времени ожидания</title>
        <hta:Application
            Icon = "MyIco.ico"
            Id="oHTA"
            ApplicationName="Выбор времени ожидания"
            Border="normal"
            BorderStyle="normal"
            Caption="yes"
            ContextMenu="no"
            InnerBorder="yes"
            MaximizeButton="no"
            MinimizeButton="yes"
            Navigable="no"
            Scroll="auto"
            ScrollFlat="no"
            Selection="no"
            ShowInTaskbar="yes"
            SingleInstance="yes"
            SysMenu="yes"
            Version="0.2"
            WindowState="normal"
        />
        <style type="text/css">
            BODY {
                font: x-small Verdana, Arial, sans-serif;
                color: WindowText;
                background-color: ButtonFace;
            }
            .Row {
                clear:both;
            }
            .Left {
                float:Left;
                clear:none;
            }
            .Right, SELECT {
                float:Right;
                clear:none;
            }
        </style>
       
        <script language="VBScript">
            Option Explicit
           
            '----------------------------------------------------------------------
            Sub OK_OnClick
                With document
                    .getElementByID("Wait").disabled        = True
                    .getElementByID("OK").disabled          = True
                   
                    .getElementByID("tagBody").style.cursor = "wait"
                End With
               
                setTimeout "SetOK", 0
            End Sub
            '----------------------------------------------------------------------
           
            '----------------------------------------------------------------------
            Sub SetOK()
                With CreateObject("Scripting.FileSystemObject").CreateTextFile("timeout.txt", True)
                    .WriteLine document.getElementByID("Wait").value
                    .Close
                End With
               
                With document
                    .getElementByID("Wait").disabled        = False
                    .getElementByID("OK").disabled          = False
                   
                    .getElementById("tagBody").style.cursor = "auto"
                End With
               
                Me.Close
            End Sub
            '----------------------------------------------------------------------
        </script>
    </head>
    <body id="tagBody" scroll="auto">
        <span Class="Row">
            <span Class="left"><span id="lblChoice">Время ожидания: </span></span>
            <span Class="right">
                <select name="Wait" id="Wait" size="1">
                    <option value="5" selected>5 секунд
                    <option value="7">7 секунд
                    <option value="10">10 секунд
                    <option value="13">13 секунд
                    <option value="15">15 секунд
                </select>
            </span>
        </span>
        <span Class="Row">
            <span Class="left"><span id="lblOK">После выбора времени ожидания нажмите кнопку "OK"</span></span>
            <span Class="right"><input type="Button" name="OK" value="OK"></span>
        </span>
    </body>
   
    <script language="VBScript">
        With window
            .resizeTo 600, tagBody.scrollHeight + 32
            .moveTo (.screen.availWidth - tagBody.offsetWidth) \ 2, (.screen.availHeight - tagBody.offsetHeight) \ 2
        End With
    </script>
</html>


angel_lyucifer 05-05-2013 02:57 2144592

Цитата:

Цитата Iska
Пробуйте так: »

Да, то что доктор прописал! Спасибо, и Христос воскрес! =)


Время: 03:33.

Время: 03:33.
© OSzone.net 2001-