На странице http://101.ru/ если войти к примеру http://101.ru/?an=port_channel_mp3&channel=169 появляется объект application/x-shockwave-flash (плеер)
Хочу регулировать громкость у плеера. Как это реализовать?
Вот код:
Соответственно при изменении разрешения экрана регулировка громкости "ломается".
Хочу регулировать громкость у плеера. Как это реализовать?
Вот код:
Код:
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_UseUpx=n
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <Array.au3>
#include <IE.au3>
Global $aTextSourseChanel, $aTextHrefChanel, $tNameSourseChan, $oIE, $oSubmit, $aNameArtist, $sURLChanel, $sHTML
Global $tText = BinaryToString(InetRead('http://101.ru/', 1))
Global $aChanelsHref = StringRegExp($tText, '[\<]a class[\=]"image" href[\=]"(.*?)"[\>][\<]img src[\=]"/proxy/design/images/indblock.*?" alt[\=]".*?101.ru"[\>][\<]span class[\=]"cover"[\>][\<][\/]span[\>][\<][\/]a[\>]', 3)
Global $aChanelsName = StringRegExp($tText, '[\<]a class[\=]"image" href[\=]"[\/][\?]an=port[\_]groupchannels[\&]group=\d+"><img src=".*?[\_]\d+/.*?[\=]\d+" alt="(.*?)"[\>][\<]span class[\=]"cover"[\>][\<][\/]span[\>][\<][\/]a[\>]', 3)
Global $hGui = GUICreate("Радио 101-RU", 240, 230, -1, -1, $WS_OVERLAPPEDWINDOW + $WS_VISIBLE + $WS_CLIPSIBLINGS + $WS_CLIPCHILDREN)
GUISetBkColor(0xFFFFFF, $hGui)
Global $Label1 = GUICtrlCreateLabel('Выберите канал', 10, 10, 150, 17)
Global $hComboChan = GUICtrlCreateCombo('', 10, 30, 220)
Global $Label2 = GUICtrlCreateLabel('Содержимое канала', 10, 55, 150, 17)
Global $hComboSourseChan = GUICtrlCreateCombo('', 10, 75, 220)
For $i = 0 To UBound($aChanelsName) - 1
GUICtrlSetData($hComboChan, $aChanelsName[$i], '')
Next
Global $BattonPlay = GUICtrlCreateButton("Play", 10, 105, 220)
Global $BattonStop = GUICtrlCreateButton("Stop", 10, 130, 220)
Global $Label3 = GUICtrlCreateLabel('Громкость', 10, 165, 220, 17, $SS_CENTER)
Global $iSlider = GUICtrlCreateSlider(10, 190, 220, 20)
GUICtrlSetLimit($iSlider, 100, 0)
GUICtrlSetData($iSlider, 50)
GUISetState(@SW_SHOW, $hGui)
Global $oIE = _IECreate('', 0, 0)
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
If IsArray($aTextSourseChanel) Or IsArray($aTextHrefChanel) Then
_IEQuit ($oIE)
EndIf
Exit
Case 4
For $i = 0 To UBound($aChanelsName)-1
If GUICtrlRead($hComboChan) = $aChanelsName[$i] Then
$aTextSourseChanel = StringRegExp(BinaryToString(InetRead('http://101.ru'&$aChanelsHref[$i], 1)), '[\<]a class[\=]"image" href[\=]".*?"[\>][\<]img src[\=]".*?" alt[\=]"(.*?)"[\>]', 3)
If Not IsArray($aTextSourseChanel) Then MsgBox('','1', @error)
$aTextHrefChanel = StringRegExp(BinaryToString(InetRead('http://101.ru'&$aChanelsHref[$i], 1)), '[\<]a class="image" href="(.*?)"><img src="[\/]proxy[\/]modules[\/]channel[\/]dynamics[\/].*?" alt="Станция.*?ru"></a>', 3)
If Not IsArray($aTextHrefChanel) Then MsgBox('','2', @error)
EndIf
Next
GUICtrlSetData($hComboSourseChan, '', '')
For $i = 0 To UBound($aTextSourseChanel) - 1
GUICtrlSetData($hComboSourseChan, $aTextSourseChanel[$i]&'|') ; Имена станций
Next
Case 7
If Not IsArray($aTextSourseChanel) Or Not IsArray($aTextHrefChanel) Or GUICtrlRead($hComboSourseChan) = '' Then
MsgBox('','ERROR', 'Выберите канал и содержимое канала')
Else
_PlayStation()
EndIf
Case 8
If Not IsArray($aTextSourseChanel) Or Not IsArray($aTextHrefChanel) Or GUICtrlRead($hComboSourseChan) = '' Then
MsgBox('','ERROR', 'Выберите канал и содержимое канала')
Else
_StopPlayStation()
EndIf
Case $iSlider
_Volum()
EndSwitch
WEnd
Func _PlayStation()
For $i = 0 To UBound($aTextSourseChanel)-1
If GUICtrlRead($hComboSourseChan) = $aTextSourseChanel[$i] Then
$sURLChanel = $aTextHrefChanel[$i]
_IENavigate($oIE, 'http://101.ru'&$sURLChanel)
$oSubmit = _IEGetObjByID ($oIE, "player_radioplayer_sm")
;_IEAction ($oSubmit, "click")
EndIf
Next
EndFunc
Func _Volum()
Dim $aInstance[5]
$hWnd = WinWait("[CLASS:IEFrame]", "", 5)
If Not $hWnd Then
MsgBox(4096, 'Сообщение', 'Окно не найдено, завершаем работу скрипта')
Exit
EndIf
For $i = 1 To 5
$hControl = ControlGetHandle($hWnd, '', '[CLASS:Internet Explorer_Server; INSTANCE:'&$i&']')
If $hControl <> '' Then
$aInstance[$i] = '[CLASS:Internet Explorer_Server; INSTANCE:'&$i&']'
Else
ExitLoop 1
EndIf
Next
_ArraySort($aInstance)
$Coord = GUICtrlRead($iSlider)
ControlClick ( "[CLASS:IEFrame]", "", $aInstance[UBound($aInstance)-1], "main", 1, ($Coord*0.75)+740, 173 )
EndFunc
Func _StopPlayStation()
$oSubmit = _IEGetObjByID($oIE, "player_radioplayer_sm")
_IEAction($oSubmit, "click")
EndFunc
GUIDelete($hGui)