Уроки PureBasic

Categories

Other Sites

Other Sites

Other Sites



             Поиск по сайту

     

                


    Оставить мне сообщение:



WebGadjet - плеер FM

Уроки PureBasic

Пример использование WebGadjet в качестве FM плеера:


If OpenWindow(0, 0, 0, 600, 300, "WebGadget", #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget )
WebGadget(0, 10, 10, 580, 280, "http://audio.rambler.ru/export/radio_player.html?id=843543")

Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf




Уроки PureBasic

Набрав в параметре "URL" WebGadjet адрес сайта : http://audio.rambler.ru/export/radio_player.html?id=843543, получаем примитивное интернет-радио.

Сайт транслирует FM передачи, а мы их только открываем плеером встроенным в наш браузер

WebGadjet


Уроки PureBasic

Использование WebGadjet как FM-radio



Рабочий вариант псевдо FM-radio.
Потоковое аудио воспроизводит плеер, загружаемый на html страницу в окне WebGadjet.

Уроки PureBasic


Можно плеер не показывать, а создать свой интерфейс.

Правда без индикатора загрузки, регулятора громкости и других наворотов.

Уроки PureBasic


Перед запуском основной программы покажем индикатор загрузки :

Уроки PureBasic




Код программы ниже :

Разным цветом указаны различные фрагменты кода отвечающие за разный функционал.

Голубой - код, запрещающий одновременный запуск программы больше одного раза.

Оранжевый - код, отвечающий за полосу загрузки.

Зеленый - индикатор таймер.

Синий - индикатор часы.


; Запрет на запуск больше одного раза
*a = CreateSemaphore_(NULL,0,1,GetProgramName())
If *a <> 0 And GetLastError_()= #ERROR_ALREADY_EXISTS
CloseHandle_(*a)
End
EndIf


Enumeration
#window
#image_loading_bar
#image_loading_bar_gadget
#text_loading
EndEnumeration

Procedure Loading(P, text_loading$)
If StartDrawing(ImageOutput(#image_loading_bar))
Box(0, 0, 202, 18, $0C67FA)

For L = 1 To 16
Line(1, L, 200, 0, $0C67FA)
Next

P * 2
Box(P + 1, 1, 200 - P, 16, $000000)
StopDrawing()
If IsGadget(#text_loading) = 0
TextGadget(#text_loading, 40, 40, 202, 20, text_loading$)
PureCOLOR_SetGadgetColor(#text_loading, $80FF, $0)
Else
SetGadgetText(#text_loading, text_loading$)
EndIf
If IsGadget(#image_loading_bar_gadget) = 0
ImageGadget(#image_loading_bar_gadget, 9, 16, 202, 18, ImageID(#image_loading_bar))
Else
DisableGadget(#image_loading_bar_gadget, 1)
DisableGadget(#image_loading_bar_gadget, 0)
EndIf
EndIf
EndProcedure

If OpenWindow(#window, #PB_Ignore, #PB_Ignore, 220, 64, "Загрузка...", #PB_Window_ScreenCentered | #PB_Window_BorderLess)
SetWindowColor(#window, $000000)
If CreateImage(#image_loading_bar, 202, 18)
HideWindow(#window, 0)

For a=0 To 25
Loading(a, "Подготовка к запуску")
Delay(40)
Next a
For a=25 To 50
Loading(a, "Проверка соединения")
Delay(40)
Next a
For a=50 To 75
Loading(a, "Проверка профилей")
Delay(40)
Next a
For a=75 To 100
Loading(a, "Загрузка станций")
Delay(40)
Next a

EndIf
EndIf
Delay(100)


Enumeration
#Window_0
#Font_HyperLink_0
EndEnumeration

Enumeration
#TextGadget_0
EndEnumeration
Global f,b
;- Сама процедура таймера - всего 3 строчки!
Procedure.s Secundomer()
f+1
If f=10:f=0:b=b+1:EndIf
SetGadgetText(#TextGadget_0,FormatDate("%ii:%ss", b)+":"+ Str(f))
EndProcedure

UsePNGImageDecoder()

DataSection
Im1:
IncludeBinary "LaveRadio.htm"
Im1End:
Im2:
IncludeBinary "EvropaPlus.htm"
Im2End:
Im3:
IncludeBinary "NasheRadio.htm"
Im3End:
Im4:
IncludeBinary "RetroFM.htm"
Im4End:
Im5:
IncludeBinary "MAXIMUM.htm"
Im5End:
Im6:
IncludeBinary "KISS_FM.htm"
Im6End:
Im7:
IncludeBinary "A-ROCK.htm"
Im7End:
Im8:
IncludeBinary "Mayak24.htm"
Im8End:
Im9:
IncludeBinary "ShamRock.htm"
Im9End:
Im10:
IncludeBinary "LugaRadio.htm"
Im10End:
Im11:
IncludeBinary "MixFm.htm"
Im11End:
Im12:
IncludeBinary "Avtoradio.htm"
Im12End:
Im13:
IncludeBinary "Маккирус.htm"
Im13End:
Im14:
IncludeBinary "Новое Радио.htm"
Im14End:
Im15:
IncludeBinary "Перец FM.htm"
Im15End:
Im16:
IncludeBinary "Радио 13.htm"
Im16End:
Im88:
IncludeBinary "indec5.png"
Im88End:
EndDataSection

CatchImage(88, ?Im88, ?Im88End-?Im88)

Procedure Clok()
LoadFont(1,"Arial",8)
StartDrawing( WindowOutput(0) )
DrawingFont(FontID(1))
DrawingMode(1)
Box(235, 240, 45, 15, $000000)
FrontColor($055AE6)
DrawText(235,240,FormatDate("%hh:%ii:%ss", Date() ))
StopDrawing()
EndProcedure

OpenWindow(#Window_0, 0, 0, 284, 260, "FM radio", #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered)
BackgroundImage_Window_0_Brush = CreatePatternBrush_(ImageID(88)) ; надевание фона на окно
If BackgroundImage_Window_0_Brush
SetClassLong_(WindowID(0), #GCL_HBRBACKGROUND, BackgroundImage_Window_0_Brush)
RedrawWindow_(WindowID(0), 0, 0, #RDW_ERASE | #RDW_FRAME | #RDW_INVALIDATE | #RDW_ALLCHILDREN)
EndIf

TextGadget(#TextGadget_0, 147, 15, 45, 15, "00:00:0")
PureCOLOR_SetGadgetColor(#TextGadget_0, $055AE6, $000000)
;SetGadgetFont(#TextGadget_0, LoadFont(88, "Microsoft Sans Serif", 8, 272))


TextGadget(77, 20, 45, 250, 15, " Выбери радиостанцию") ; текст по умолчанию
PureCOLOR_SetGadgetColor(77, $055AE6, $000000) ; цвет текста, цвет фона

TextGadget(78, 15, 8, 100, 23, "PureBasic") ; лого
PureCOLOR_SetGadgetColor(78, $055AE6, $000000) ; цвет текста, цвет фона
SetGadgetFont(78, LoadFont(79, "Tahoma", 14, 784))

HyperLinkGadget(1, 25, 90, 80, 15, "Lave Radio", $0A6DF5 )
HyperLinkGadget(2, 25, 110, 80, 15, "Evropa Plus", $0A6DF5 )
HyperLinkGadget(3, 25, 130, 80, 15, "Наше Радио", $0A6DF5 )
HyperLinkGadget(4, 25, 150, 80, 15, "Ретро FM", $0A6DF5 )
HyperLinkGadget(5, 25, 170, 80, 15, "MAXIMUM", $0A6DF5 )
HyperLinkGadget(6, 25, 190, 80, 15, "KISS FM", $0A6DF5 )
HyperLinkGadget(7, 25, 210, 80, 15, "A-ROCK", $0A6DF5 )
HyperLinkGadget(8, 25, 230, 80, 15, "Маяк", $0A6DF5 )
HyperLinkGadget(9, 155, 90, 80, 15, "ShamRock", $0A6DF5 )
HyperLinkGadget(10, 155, 110, 80, 15, "Luga Radio", $0A6DF5 )
HyperLinkGadget(11, 155, 130, 80, 15, "MixFm", $0A6DF5 )
HyperLinkGadget(12, 155, 150, 80, 15, "Авторадио", $0A6DF5 )
HyperLinkGadget(13, 155, 170, 80, 15, "Маккирус", $0A6DF5 )
HyperLinkGadget(14, 155, 190, 80, 15, "Новое Радио", $0A6DF5 )
HyperLinkGadget(15, 155, 210, 80, 15, "Перец FM", $0A6DF5 )
HyperLinkGadget(16, 155, 230, 80, 15, "Радио 13", $0A6DF5 )

HyperLinkGadget(17, 232, 10, 25, 15, "Stop", $0A6DF5 ) ; Stop


For a=0 To 16

PureCOLOR_SetGadgetColor(a + 1, #PureCOLOR_SystemColor, $000000) ; цвет фона ссылки
SetGadgetColor(a + 1, #PB_Gadget_FrontColor, $022051) ; цвет ссылки $05387D
Next a

WebGadget(333, 0, 0, 0, 0, "")

Repeat
Event = WaitWindowEvent()

If zeit$<>FormatDate("%ss", Date() )
zeit$=FormatDate("%ss", Date() )
Clok()
EndIf

Select Event
Case #PB_Event_Gadget
Select EventGadget()

Case 1
f=0:b=0
StartTimer( 1 , 100 , @Secundomer())

SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im1, ?Im1End-?Im1))
SetGadgetText(77,"Станция : Lave Radio 106.6 FM 96 kbps")
Case 2
f=0:b=0
StartTimer( 1 , 100 , @Secundomer())

SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im2, ?Im2End-?Im2))
SetGadgetText(77,"Станция : Evropa Plus 128 kbps")
Case 3
f=0:b=0
StartTimer( 1 , 100 , @Secundomer())

SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im3, ?Im3End-?Im3))
SetGadgetText(77,"Станция : Наше Радио 128 kbps")
Case 4
f=0:b=0
StartTimer( 1 , 100 , @Secundomer())

SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im4, ?Im4End-?Im4))
SetGadgetText(77,"Станция : Ретро FM 128 kbps")
Case 5
f=0:b=0
StartTimer( 1 , 100 , @Secundomer())

SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im5, ?Im5End-?Im5))
SetGadgetText(77,"Станция : MAXIMUM 96 kbps")
Case 6
f=0:b=0
StartTimer( 1 , 100 , @Secundomer())

SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im6, ?Im6End-?Im6))
SetGadgetText(77,"Станция : KISS FM 128 kbps")
Case 7
f=0:b=0
StartTimer( 1 , 100 , @Secundomer())

SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im7, ?Im7End-?Im7))
SetGadgetText(77,"Станция : A-ROCK 128 kbps")
Case 8
f=0:b=0
StartTimer( 1 , 100 , @Secundomer())

SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im7, ?Im7End-?Im7))
SetGadgetText(77,"Станция : Маяк 64 kbps")
Case 9
f=0:b=0
StartTimer( 1 , 100 , @Secundomer())

SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im9, ?Im9End-?Im9))
SetGadgetText(77,"Станция : ShamRock 128 kbps")
Case 10
f=0:b=0
StartTimer( 1 , 100 , @Secundomer())

SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im10, ?Im10End-?Im10))
SetGadgetText(77,"Станция : Luga Radio 128 kbps")
Case 11
f=0:b=0
StartTimer( 1 , 100 , @Secundomer())

SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im11, ?Im11End-?Im11))
SetGadgetText(77,"Станция : MixFm 128 kbps")
Case 12
f=0:b=0
StartTimer( 1 , 100 , @Secundomer())

SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im12, ?Im12End-?Im12))
SetGadgetText(77,"Станция : Авторадио 101.RU 64 kbps")
Case 13
f=0:b=0
StartTimer( 1 , 100 , @Secundomer())

SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im13, ?Im13End-?Im13))
SetGadgetText(77,"Станция : Маккирус 128 kbps")
Case 14
f=0:b=0
StartTimer( 1 , 100 , @Secundomer())

SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im14, ?Im14End-?Im14))
SetGadgetText(77,"Станция : Новое Радио США 128 kbps")
Case 15
f=0:b=0
StartTimer( 1 , 100 , @Secundomer())

SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im15, ?Im15End-?Im15))
SetGadgetText(77,"Станция : Перец FM 64 kbps")
Case 16
f=0:b=0
StartTimer( 1 , 100 , @Secundomer())

SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im16, ?Im16End-?Im16))
SetGadgetText(77,"Станция : Радио 13 128 kbps")


Case 17
SetGadgetState(333, #PB_Web_Stop) ; Stop
EndTimer(1)

EndSelect
EndSelect
If Event=#PB_Event_CloseWindow
Break
EndIf
ForEver



Скачать архив исходников.

Уроки PureBasic

Еще один вариант кода :

Не используется картинка для фона.

Другая полоса загрузки программы :

Скачать исходник

Уроки PureBasic


Уроки PureBasic


; Запрет на запуск больше одного раза
*a = CreateSemaphore_(NULL,0,1,GetProgramName())
If *a <> 0 And GetLastError_()= #ERROR_ALREADY_EXISTS
CloseHandle_(*a)
End
EndIf
; ///////////////////////////////////////////////////////////////
CreateImage(0,282,80)
hdc = StartDrawing(ImageOutput(0))
DrawingMode(901)
FrontColor($055AE6)
RoundRect_(hdc,5,5,280,80,5,5)
StopDrawing()

hdc = StartDrawing(ImageOutput(0))
DrawingMode(901)
FrontColor($000000)
RoundRect_(hdc,6,6,279,79,5,5)
DrawText(25, 10, "PureBasic", $055AE6)
LineXY(17, 70, 265, 70, $055AE6)
StopDrawing()
; ///////////////////////////////////////////////////////////////
Procedure LineGadgetHeight(Gadget, x, y, Height)
Im=CreateImage(#PB_Any, 2, Height)
If Im
If StartDrawing(ImageOutput(Im))
Line(0,0, 0,Height ,$E3031C)
StopDrawing()
ImageGadget(Gadget,x, y, 2,Height,ImageID(Im))
EndIf
EndIf
EndProcedure
Procedure LineGadgetHeight_2(Gadget, x, y, Height)
Im=CreateImage(#PB_Any, 2, Height)
If Im
If StartDrawing(ImageOutput(Im))
Line(0,0, 0,Height ,$0302FC)
StopDrawing()
ImageGadget(Gadget,x, y, 2,Height,ImageID(Im))
EndIf
EndIf
EndProcedure
;//////////////////////////////////////////////////////////////
OpenWindow(0, 0, 0, 350, 80, "Индикатор", #PB_Window_ScreenCentered | #PB_Window_BorderLess )
SetWindowColor(0, $000000)
TextGadget(300, 105, 45, 180, 15, "Подключение к сети")
PureCOLOR_SetGadgetColor(300, $055AE6, $000000)
For n = 1 To 150
LineGadgetHeight(151-n, 22+n*2, 20, 20)
For i=0 To 350
WindowEvent()
Next i
Delay(5)
Next
TextGadget(300, 105, 45, 180, 15, "Проверка профиля")
PureCOLOR_SetGadgetColor(300, $055AE6, $0000000)
For n = 1 To 150
LineGadgetHeight_2(n, 324-n*2, 20, 20)
For i=0 To 350
WindowEvent()
Next i
Delay(5)
Next
TextGadget(300, 105, 45, 180, 15, "Загрузка FM - станций")
PureCOLOR_SetGadgetColor(300, $055AE6, $0000000)
For n = 1 To 150
LineGadgetHeight(151-n, 22+n*2, 20, 20)
For i=0 To 350
WindowEvent()
Next i
Delay(5)
Next
Delay(100)
;/////////////////////////////////////////////////////////////////////////////////////////
Enumeration
#TextGadget_0
EndEnumeration

Global a,b
Procedure.s Secundomer() ;- Сама процедура таймера - всего 3 строчки!
a+1
If a=10:a=0:b=b+1:EndIf
SetGadgetText(#TextGadget_0,FormatDate("%ii:%ss", b)+":"+ Str(a))
EndProcedure
;/////////////////////////////////////////////////////////////////////////////////////////
Procedure Clok()
LoadFont(1,"Arial",8)
StartDrawing( WindowOutput(0) )
DrawingFont(FontID(1))
DrawingMode(1)
Box(235, 240, 45, 15, $000000)
FrontColor($055AE6)
DrawText(235,240,FormatDate("%hh:%ii:%ss", Date() ))
StopDrawing()
EndProcedure
;/////////////////////////////////////////////////////////////////////////////////////////
DataSection
Im1:
IncludeBinary "LaveRadio.htm"
Im1End:
Im2:
IncludeBinary "EvropaPlus.htm"
Im2End:
Im3:
IncludeBinary "NasheRadio.htm"
Im3End:
Im4:
IncludeBinary "RetroFM.htm"
Im4End:
Im5:
IncludeBinary "MAXIMUM.htm"
Im5End:
Im6:
IncludeBinary "KISS_FM.htm"
Im6End:
Im7:
IncludeBinary "A-ROCK.htm"
Im7End:
Im8:
IncludeBinary "Mayak24.htm"
Im8End:
Im9:
IncludeBinary "ShamRock.htm"
Im9End:
Im10:
IncludeBinary "LugaRadio.htm"
Im10End:
Im11:
IncludeBinary "MixFm.htm"
Im11End:
Im12:
IncludeBinary "Avtoradio.htm"
Im12End:
Im13:
IncludeBinary "Маккирус.htm"
Im13End:
Im14:
IncludeBinary "Новое Радио.htm"
Im14End:
Im15:
IncludeBinary "Перец FM.htm"
Im15End:
Im16:
IncludeBinary "Радио 13.htm"
Im16End:
EndDataSection
;/////////////////////////////////////////////////////////////////////////////////////////
If InitSprite() = 1
EndIf
#width = 250
#height = 30
theta.f = 0.0 : x = 0 : y = 0 : frame.f = 0.0 : pas.f = 45.0 : DoCos = 1 :
;/////////////////////////////////////////////////////////////////////////////////////////
If OpenWindow(0, 0, 0, 286, 260, "FM-radio",#PB_Window_MinimizeGadget|#PB_Window_ScreenCentered)
SetWindowColor(0,$000000)
ImageGadget(902,0,0,0,0,ImageID(0))

TextGadget(77, 20, 55, 250, 15, " Выбери радиостанцию") ; текст по умолчанию
PureCOLOR_SetGadgetColor(77, $055AE6, $000000) ; цвет текста, цвет фона RGB(229, 91, 5)

TextGadget(#TextGadget_0, 147, 15, 45, 15, "00:00:0")
PureCOLOR_SetGadgetColor(#TextGadget_0, $055AE6, $000000)

HyperLinkGadget(18, 25, 90, 80, 15, "Lave Radio", $0A6DF5 )
PureCOLOR_SetGadgetColor(18, #PureCOLOR_SystemColor, $000000)
SetGadgetColor(18, #PB_Gadget_FrontColor, $022051)
For i=0 To 284
WindowEvent()
Next i
Delay(100)
HyperLinkGadget(19, 25, 110, 80, 15, "Evropa Plus", $0A6DF5 )
PureCOLOR_SetGadgetColor(19, #PureCOLOR_SystemColor, $000000) ; цвет фона ссылки
SetGadgetColor(19, #PB_Gadget_FrontColor, $022051)
For i=0 To 284
WindowEvent()
Next i
Delay(100)
HyperLinkGadget(200, 25, 130, 80, 15, "Наше Радио", $0A6DF5 )
PureCOLOR_SetGadgetColor(200, #PureCOLOR_SystemColor, $000000)
SetGadgetColor(200, #PB_Gadget_FrontColor, $022051)
For i=0 To 284
WindowEvent()
Next i
Delay(100)
HyperLinkGadget(4, 25, 150, 80, 15, "Ретро FM", $0A6DF5 )
PureCOLOR_SetGadgetColor(4, #PureCOLOR_SystemColor, $000000)
SetGadgetColor(4, #PB_Gadget_FrontColor, $022051)
For i=0 To 284
WindowEvent()
Next i
Delay(100)
HyperLinkGadget(5, 25, 170, 80, 15, "MAXIMUM", $0A6DF5 )
PureCOLOR_SetGadgetColor(5, #PureCOLOR_SystemColor, $000000)
SetGadgetColor(5, #PB_Gadget_FrontColor, $022051)
For i=0 To 284
WindowEvent()
Next i
Delay(100)
HyperLinkGadget(6, 25, 190, 80, 15, "KISS FM", $0A6DF5 )
PureCOLOR_SetGadgetColor(6, #PureCOLOR_SystemColor, $000000)
SetGadgetColor(6, #PB_Gadget_FrontColor, $022051)
For i=0 To 284
WindowEvent()
Next i
Delay(100)
HyperLinkGadget(201, 25, 210, 80, 15, "A-ROCK", $0A6DF5 )
PureCOLOR_SetGadgetColor(201, #PureCOLOR_SystemColor, $000000)
SetGadgetColor(201, #PB_Gadget_FrontColor, $022051)
For i=0 To 284
WindowEvent()
Next i
Delay(100)
HyperLinkGadget(8, 25, 230, 80, 15, "Маяк", $0A6DF5 )
PureCOLOR_SetGadgetColor(8, #PureCOLOR_SystemColor, $000000)
SetGadgetColor(8, #PB_Gadget_FrontColor, $022051)
For i=0 To 284
WindowEvent()
Next i
Delay(100)
;/////////////////////////////////////////////////////////////////////////////
HyperLinkGadget(9, 155, 90, 80, 15, "ShamRock", $0A6DF5 )
PureCOLOR_SetGadgetColor(9, #PureCOLOR_SystemColor, $000000)
SetGadgetColor(9, #PB_Gadget_FrontColor, $022051)
For i=0 To 284
WindowEvent()
Next i
Delay(100)
HyperLinkGadget(10, 155, 110, 80, 15, "Luga Radio", $0A6DF5 )
PureCOLOR_SetGadgetColor(10, #PureCOLOR_SystemColor, $000000)
SetGadgetColor(10, #PB_Gadget_FrontColor, $022051)
For i=0 To 284
WindowEvent()
Next i
Delay(100)
HyperLinkGadget(11, 155, 130, 80, 15, "MixFm", $0A6DF5 )
PureCOLOR_SetGadgetColor(11, #PureCOLOR_SystemColor, $000000)
SetGadgetColor(11, #PB_Gadget_FrontColor, $022051)
For i=0 To 284
WindowEvent()
Next i
Delay(100)
HyperLinkGadget(12, 155, 150, 80, 15, "Авторадио", $0A6DF5 )
PureCOLOR_SetGadgetColor(12, #PureCOLOR_SystemColor, $000000)
SetGadgetColor(12, #PB_Gadget_FrontColor, $022051)
For i=0 To 284
WindowEvent()
Next i
Delay(100)
HyperLinkGadget(13, 155, 170, 80, 15, "Маккирус", $0A6DF5 )
PureCOLOR_SetGadgetColor(13, #PureCOLOR_SystemColor, $000000)
SetGadgetColor(13, #PB_Gadget_FrontColor, $022051)
For i=0 To 284
WindowEvent()
Next i
Delay(100)
HyperLinkGadget(14, 155, 190, 80, 15, "Новое Радио", $0A6DF5 )
PureCOLOR_SetGadgetColor(14, #PureCOLOR_SystemColor, $000000)
SetGadgetColor(14, #PB_Gadget_FrontColor, $022051)
For i=0 To 284
WindowEvent()
Next i
Delay(100)
HyperLinkGadget(15, 155, 210, 80, 15, "Перец FM", $0A6DF5 )
PureCOLOR_SetGadgetColor(15, #PureCOLOR_SystemColor, $000000)
SetGadgetColor(15, #PB_Gadget_FrontColor, $022051)
For i=0 To 284
WindowEvent()
Next i
Delay(100)
HyperLinkGadget(16, 155, 230, 80, 15, "Радио 13", $0A6DF5 )
PureCOLOR_SetGadgetColor(16, #PureCOLOR_SystemColor, $000000)
SetGadgetColor(16, #PB_Gadget_FrontColor, $022051)
For i=0 To 284
WindowEvent()
Next i
Delay(100)

WebGadget(333, 0, 0, 0, 0, "")

;////////////////////////////////////////////////////////////////////////////////////////////////////////////
OpenWindowedScreen(WindowID(0), 15, 26, #width, #height, 0, 0, 0)
CreateSprite(0, 1, 2)
If StartDrawing(SpriteOutput(0))
Box(0, 1, 4, 2, $00FFFF)
StopDrawing()
EndIf
TransparentSpriteColor(0,$FF00FF)
CreateSprite(1, #width, #height)

EndIf
#RAD_TO_DEG=18
#DEG_TO_RAD = 0.01

Macro DegCos(val)
Cos(val / #RAD_TO_DEG)
EndMacro
Macro DegSin(val)
Sin(val / #RAD_TO_DEG)
EndMacro

Repeat
Event = WindowEvent()
If zeit$<>FormatDate("%ss", Date() ) ;///////////////вывод часы////////////////////
zeit$=FormatDate("%ss", Date() ) ;///////////////вывод часы////////////////////
Clok() ;///////////////вывод часы////////////////////
EndIf
Select Event
Case #PB_Event_Gadget
If EventGadget()=0
End
EndIf
If EventGadget()=1
pas = GetGadgetState(1)
SetGadgetText(3,Str(pas))
EndIf
If EventGadget()=2
DIV=GetGadgetState(2)
SetGadgetText(4,Str(DIV))
EndIf
If EventGadget()=7
DoCos = 1 - DoCos
SetGadgetState(7,DoCos)
EndIf
Case #PB_Event_CloseWindow
End
EndSelect
Select EventGadget()
Case 18
a=0:b=0
StartTimer( 1 , 100 , @Secundomer())
SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im1, ?Im1End-?Im1))
SetGadgetText(77,"Станция : Lave Radio 106.6 FM 96 kbps")
DIV = 1
pas.f = 35.0
Case 19
a=0:b=0
StartTimer( 1 , 100 , @Secundomer())
SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im2, ?Im2End-?Im2))
SetGadgetText(77,"Станция : Evropa Plus 128 kbps")
DIV = 2
pas.f = 45.0
Case 200
a=0:b=0
StartTimer( 1 , 100 , @Secundomer())
SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im3, ?Im3End-?Im3))
SetGadgetText(77,"Станция : Наше Радио 128 kbps")
DIV = 3
Case 4
a=0:b=0
StartTimer( 1 , 100 , @Secundomer())
SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im4, ?Im4End-?Im4))
SetGadgetText(77,"Станция : Ретро FM 128 kbps")
DIV = 1
pas.f = 45.0
Case 5
a=0:b=0
StartTimer( 1 , 100 , @Secundomer())
SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im5, ?Im5End-?Im5))
SetGadgetText(77,"Станция : MAXIMUM 96 kbps")
DIV = 2
pas.f = 35.0
Case 6
a=0:b=0
StartTimer( 1 , 100 , @Secundomer())
SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im6, ?Im6End-?Im6))
SetGadgetText(77,"Станция : KISS FM 128 kbps")
DIV = 3
pas.f = 45.0
Case 201
a=0:b=0
StartTimer( 1 , 100 , @Secundomer())
SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im7, ?Im7End-?Im7))
SetGadgetText(77,"Станция : A-ROCK 128 kbps")
DIV = 1
pas.f = 40.0
Case 8
a=0:b=0
StartTimer( 1 , 100 , @Secundomer())
SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im7, ?Im7End-?Im7))
SetGadgetText(77,"Станция : Маяк 64 kbps")
DIV = 2
pas.f = 45.0
Case 9
a=0:b=0
StartTimer( 1 , 100 , @Secundomer())
SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im9, ?Im9End-?Im9))
SetGadgetText(77,"Станция : ShamRock 128 kbps")
DIV = 3
pas.f = 35.0
Case 10
a=0:b=0
StartTimer( 1 , 100 , @Secundomer())
SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im10, ?Im10End-?Im10))
SetGadgetText(77,"Станция : Luga Radio 128 kbps")
DIV = 2
pas.f = 45.0
Case 11
a=0:b=0
StartTimer( 1 , 100 , @Secundomer())
SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im11, ?Im11End-?Im11))
SetGadgetText(77,"Станция : MixFm 128 kbps")
DIV = 2
pas.f = 40.0
Case 12
a=0:b=0
StartTimer( 1 , 100 , @Secundomer())
SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im12, ?Im12End-?Im12))
SetGadgetText(77,"Станция : Авторадио 101.RU 64 kbps")
DIV = 3
pas.f = 45.0
Case 13
a=0:b=0
StartTimer( 1 , 100 , @Secundomer())
SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im13, ?Im13End-?Im13))
SetGadgetText(77,"Станция : Маккирус 128 kbps")
DIV = 1
pas.f = 40.0
Case 14
a=0:b=0
StartTimer( 1 , 100 , @Secundomer())
SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im14, ?Im14End-?Im14))
SetGadgetText(77,"Станция : Новое Радио США 128 kbps")
DIV = 2
pas.f = 35.0
Case 15
a=0:b=0
StartTimer( 1 , 100 , @Secundomer())
SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im15, ?Im15End-?Im15))
SetGadgetText(77,"Станция : Перец FM 64 kbps")
DIV = 1
pas.f = 55.0
Case 16
a=0:b=0
StartTimer( 1 , 100 , @Secundomer())
SetGadgetItemText(333,#PB_Web_HtmlCode,PeekS(?Im16, ?Im16End-?Im16))
SetGadgetText(77,"Станция : Радио 13 128 kbps")
DIV = 2
EndSelect
FlipBuffers()
DisplaySprite(1,0,0)
For x = 0 To #width - 1
theta = x + frame
Select DoCos
Case 0
y=((#height-4)/2)-DegSin(theta)*(#height/2);
Case 1
y=((#height-4)/2)-DegSin(theta)*(#height/2)*(DegCos(theta)/DIV)
EndSelect
DisplayTransparentSprite(0,x,y)
Next
frame=frame+pas
Delay(25)
ForEver



Уроки PureBasic

Используются технологии uCoz