WebGadget HTML Code auslesen.

Für allgemeine Fragen zur Programmierung mit PureBasic.
Andreas21
Beiträge: 390
Registriert: 30.08.2004 09:05
Computerausstattung: Desktop
Windows 10 Pro x64
CPU: AMD Ryzen 5 2600 3.40 GHz
Ram: 16GB RAM
Grafik: NVIDA Geforce 1060
PB: 5.72 X86/X64
Wohnort: Heidelberg

WebGadget HTML Code auslesen.

Beitrag 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
Windows 10 x64 Pro - PB 5.61 X64 / x32 - PB 4.6 x32
Benutzeravatar
hjbremer
Beiträge: 822
Registriert: 27.02.2006 22:30
Computerausstattung: von gestern
Wohnort: Neumünster

Re: WebGadget HTML Code auslesen.

Beitrag 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
Purebasic 5.70 x86 5.72 X 64 - Windows 10

Der Computer hat dem menschlichen Gehirn gegenüber nur einen Vorteil: Er wird benutzt
grüße hjbremer
Andreas21
Beiträge: 390
Registriert: 30.08.2004 09:05
Computerausstattung: Desktop
Windows 10 Pro x64
CPU: AMD Ryzen 5 2600 3.40 GHz
Ram: 16GB RAM
Grafik: NVIDA Geforce 1060
PB: 5.72 X86/X64
Wohnort: Heidelberg

Re: WebGadget HTML Code auslesen.

Beitrag 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
Windows 10 x64 Pro - PB 5.61 X64 / x32 - PB 4.6 x32
Benutzeravatar
CSHW89
Beiträge: 489
Registriert: 14.12.2008 12:22

Re: WebGadget HTML Code auslesen.

Beitrag 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
Bild Bild Bild
http://www.jasik.de - Windows Hilfe Seite
padawan hat geschrieben:Ich liebe diese von hinten über die Brust ins Auge Lösungen
Benutzeravatar
hjbremer
Beiträge: 822
Registriert: 27.02.2006 22:30
Computerausstattung: von gestern
Wohnort: Neumünster

Re: WebGadget HTML Code auslesen.

Beitrag 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
Purebasic 5.70 x86 5.72 X 64 - Windows 10

Der Computer hat dem menschlichen Gehirn gegenüber nur einen Vorteil: Er wird benutzt
grüße hjbremer
Antworten