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

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   Помогите разобраться с _IEFormElementRadioSelect (http://forum.oszone.net/showthread.php?t=141215)

Twix1124 27-05-2009 21:10 1128973

Помогите разобраться с _IEFormElementRadioSelect
 
HTML код:

<input type="radio" name="profile_privacy" checked='checked' value="1">
<input type="radio" name="profile_privacy"  value="0">
<input type="radio" name="profile_privacy"  value="2">
<input type="radio" name="profile_privacy"  value="4">

Допусти есть такая raio box, как отметить второй элемент? Вроде всё попробовал уже=)
Имя формы и адресс можно взять любой...
Спасибо.

З.ы. Можно ли вписать путь до файла в input типа "file"?

Twix1124 28-05-2009 18:57 1129671

Актуально...

З.ы. как запустить отдельную строчку в редакторе? Или такое невозможно?

Iska 29-05-2009 08:39 1130044

Цитата:

Цитата Twix1124
З.ы. как запустить отдельную строчку в редакторе? Или такое невозможно? »

Попробуйте так:
Код:

' Execute Selection : $(SciteDefaultHome)\ExecSelAU3.vbs
' Version: 1.1
' Autor: mozers™, modified by alexii
' ------------------------------------------------
' Выполняет выделенный в редакторе код (модифицировано только под .au3)
' Для подключения добавьте в свой файл au3.properties следующие строки:
'    file.patterns.ExecSelAU3=*.au3
'    command.name.34.$(file.patterns.ExecSelAU3)=Execute Selection AU3
'    command.34.$(file.patterns.ExecSelAU3)=cscript.exe //nologo "$(SciteDefaultHome)\ExecSelAU3.vbs"
'    command.input.34.$(file.patterns.ExecSelAU3)=$(CurrentSelection){-=- Mark Last Line -=-}
'    command.mode.34.$(file.patterns.ExecSelAU3)=subsystem:console,savebefore:no
' ------------------------------------------------
Option Explicit

Const ForWriting = 2


Dim objWshShell
Dim objFSO

Dim strCodeText
Dim strTmpFileName
Dim strPath2Exe
Dim strOutput


strCodeText = WScript.StdIn.ReadAll
strCodeText = StrConvert(strCodeText,"Windows-1251","utf-8")
strCodeText = Left(strCodeText, InStr(strCodeText, "{-=- Mark Last Line -=-}") - 1)

If Len(Trim(strCodeText)) = 0 Then
    WScript.Echo "{-=- Nothing selection -=-}"
    WScript.Quit 1
End If

Set objWshShell = WScript.CreateObject("WScript.Shell")
Set objFSO      = WScript.CreateObject("Scripting.FileSystemObject")

strTmpFileName = objFSO.BuildPath(objWshShell.ExpandEnvironmentStrings("%TEMP%"),"$ExecSelAU3.au3")

With objFSO.OpenTextFile(strTmpFileName, ForWriting, True)
    .Write strCodeText
    .Close
End With

strPath2Exe = objFSO.BuildPath(objWshShell.ExpandEnvironmentStrings("%ProgramFiles%"),"AutoIt3\AutoIt3.exe")

With objWshShell.Exec("""%comspec%"" /c """"" & strPath2Exe & """ /ErrorStdOut /AutoIt3ExecuteScript """ & strTmpFileName & """ 2>&1""")
    strOutput = ""
   
    Do While .Status = 0
        strOutput = strOutput & .StdOut.ReadAll
        WScript.Sleep 100
    Loop
End With

objFSO.DeleteFile strTmpFileName

WScript.Echo StrConvert(strOutput,"Windows-1251","cp866")

Set objFSO      = Nothing
Set objWshShell = Nothing

WScript.Quit 0
'=============================================================================

'=============================================================================
Function StrConvert(strText, strSourceCharset, strDestCharset)
    Const adTypeText = 2
    Const adModeReadWrite = 3
   
    With WScript.CreateObject("ADODB.Stream")
        .Type = adTypeText
        .Mode = adModeReadWrite
       
        .Open
        .Charset = strSourceCharset
        .WriteText strText
       
        .Position = 0
        .Charset = strDestCharset
       
        strConvert = .ReadText
    End With
End Function
'=============================================================================

Источник: SciTE: запуск выделенной части кода.

Основное изменение по сравнению с оригинальным скриптом — использование маркера «{-=- Mark Last Line -=-}», добавляемого к выделению, дабы обеспечить работоспособность скрипта при его вызове при отсутствии выделения.

«strCodeText = StrConvert(strCodeText,"Windows-1251","utf-8")» нужно, если у Вас оригинальный SciTE из поставки AutoIt, который отправляет данные во входной поток исключительно в кодировке UTF-8 (в сборках «SciTE RU-Board» данное поведение исправлено).

«WScript.Echo StrConvert(strOutput,"Windows-1251","cp866")» может потребоваться, а может и нет: зависит от того, настраивали ли Вы, и как именно, параметры «character.set» и/или «code.page» секции «# Internationalisation» в настройках SciTE.

Впрочем, сие не единственный путь. Если Вы знаете LUA, надёжнее будет реализовать на нём, используя SciTE Lua Scripting Extension.

Twix1124 29-05-2009 16:40 1130378

Я имел вввиду по средствам самого редактора.


Время: 09:48.

Время: 09:48.
© OSzone.net 2001-