Seite 1 von 1
WebGadget HTML Code auslesen.
Verfasst: 22.01.2012 00:01
von Andreas21
Hi,
mit #PB_Web_HtmlCode müste man von einem WebGadget den HTML Code bekommen.
Man bekommt aber nur "ÿþ<".
Beispiel Code:
Code: Alles auswählen
If OpenWindow(0, 0, 0, 600, 300, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
WebGadget(0, 10, 10, 580, 280, "http://www.purebasic.com")
Delay(1000)
Debug GetGadgetItemText(0, #PB_Web_HtmlCode)
Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
Re: WebGadget HTML Code auslesen.
Verfasst: 22.01.2012 00:06
von hjbremer
Code: Alles auswählen
Procedure.i WebGadgetBusy(pbnr)
While GetGadgetAttribute(pbnr, #PB_Web_Busy)
event = WindowEvent()
If event = #WM_KEYDOWN
If EventwParam() = #VK_ESCAPE
ProcedureReturn #S_FALSE
EndIf
EndIf
Delay(1)
Wend
ProcedureReturn #S_OK
EndProcedure
If OpenWindow(0, 0, 0, 600, 300, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
WebGadget(0, 10, 10, 580, 280, "http://www.purebasic.com")
WebGadgetBusy(0)
Debug GetGadgetItemText(0, #PB_Web_HtmlCode)
Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
Re: WebGadget HTML Code auslesen.
Verfasst: 22.01.2012 00:17
von Andreas21
Das geht aber nicht.
Code: Alles auswählen
Procedure.i WebGadgetBusy(pbnr)
While GetGadgetAttribute(pbnr, #PB_Web_Busy)
event = WindowEvent()
If event = #WM_KEYDOWN
If EventwParam() = #VK_ESCAPE
ProcedureReturn #S_FALSE
EndIf
EndIf
Delay(1)
Wend
ProcedureReturn #S_OK
EndProcedure
If OpenWindow(0, 0, 0, 600, 300, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
WebGadget(0, 10, 10, 580, 280, "http://www.purebasic.de")
WebGadgetBusy(0)
SetGadgetItemText(0, #PB_Web_HtmlCode, "<html><title>Test</title><body>Test...</body></html>")
WebGadgetBusy(0)
Debug GetGadgetItemText(0, #PB_Web_HtmlCode)
Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
Re: WebGadget HTML Code auslesen.
Verfasst: 22.01.2012 01:03
von CSHW89
SetGadgetItemText bzw. die Events, die dadurch erzeugt werden, müssen wohl erstmal durch WindowEvent() abgearbeitet werden:
Code: Alles auswählen
Procedure.i WebGadgetBusy(pbnr)
While WindowEvent()
Wend
While GetGadgetAttribute(pbnr, #PB_Web_Busy)
event = WindowEvent()
If event = #WM_KEYDOWN
If EventwParam() = #VK_ESCAPE
ProcedureReturn #S_FALSE
EndIf
EndIf
Delay(1)
Wend
ProcedureReturn #S_OK
EndProcedure
If OpenWindow(0, 0, 0, 600, 300, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
WebGadget(0, 10, 10, 580, 280, "http://www.purebasic.de")
WebGadgetBusy(0)
SetGadgetItemText(0, #PB_Web_HtmlCode, "<html><title>Test</title><body>Test...</body></html>")
WebGadgetBusy(0)
Debug GetGadgetItemText(0, #PB_Web_HtmlCode)
Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
lg Kevin
Re: WebGadget HTML Code auslesen.
Verfasst: 22.01.2012 01:15
von hjbremer
huch, er war schneller
für Set... brauchst du kein Busy, sondern die Vernichtung der Events, die durch Set... erzeugt werden
Code: Alles auswählen
If OpenWindow(0, 0, 0, 600, 300, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
WebGadget(0, 10, 10, 580, 280, "")
SetGadgetItemText(0, #PB_Web_HtmlCode, "<html><title>Test</title><body>Test...</body></html>")
While WindowEvent(): Wend
Debug GetGadgetItemText(0, #PB_Web_HtmlCode)
Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf