WebGadget()
Syntax
Ergebnis = WebGadget(#Gadget, x, y, Breite, Hoehe, URL$ [, Flags])Beschreibung
Erstellt ein Web-Gadget in der aktuellen Gadgetliste.
Wenn #PB_Any als '#Gadget' Parameter verwendet wird, dann wird die Nummer des neuen Gadgets als 'Ergebnis' zurückgegeben. #Gadget ist die Nummer, die (später) von der EventGadget() Funktion zurückgegeben wird.
'Flags' ist ein optionaler Parameter und kann eine der folgenden Konstanten annehmen:#PB_Web_Mozilla : Verwendet das Mozilla ActiveX anstelle des vom IExplorers (nur auf Windows).Die folgenden Befehle können zum Zugriff auf das WebGadget benutzt werden:
- SetGadgetText(): Ändert die aktuelle URL.
- GetGadgetText(): Ermittelt die aktuelle URL.
- SetGadgetState(): Führt einige Aktionen auf dem Gadget aus. Die folgenden Konstanten sind gültig:#PB_Web_Back : Ein Schritt zurück in der Navigations-Historie. #PB_Web_Forward: Ein Schritt vorwärts in der Navigations-Historie. #PB_Web_Stop : Stoppt das Laden der aktuellen Seite. #PB_Web_Refresh: Erneutes Laden ("Refresh") der aktuellen Seite.Hinweis: Die folgenden Features arbeiten nicht mit dem Mozilla ActiveX auf Windows (#PB_Web_Mozilla Flag)
- SetGadgetItemText(): Mit #PB_Web_HtmlCode als 'Eintrag' kann Html-Code in das Gadget eingefügt ("gestreamed") werden.
- GetGadgetItemText(): Die folgenden Konstanten können verwendet werden, um Informationen zu erhalten:#PB_Web_HtmlCode : Ermittelt den Html-Code vom Gadget. #PB_Web_PageTitle : Ermittelt den aktuellen Titel der angezeigten Seite. #PB_Web_StatusMessage: Ermittelt die aktuelle Statusleisten-Nachricht. #PB_Web_SelectedText : Ermittelt den aktuell selektierten Text innerhalb des Gadgets.- SetGadgetAttribute(): Setzt die folgenden Attribute:#PB_Web_ScrollX : Legt die horizontale Scroll-Position fest. #PB_Web_ScrollY : Legt die vertikale Scroll-Position fest. #PB_Web_BlockPopups : Blockt Popup-Fenster ab. #PB_EventType_PopupWindow wird als Ereignis-Nachricht geschickt, wenn diese Einstellung aktiviert ist. #PB_Web_BlockPopupMenu: Blockt das standardmäßige Popup-Menü ab. #PB_EventType_PopupMenu wird als Ereignis-Nachricht geschickt, wenn diese Einstellung aktiviert ist. #PB_Web_NavigationCallback: Definiert einen Callback für das Überwachen (und Deaktivieren) der Navigation.Der Navigations-Callback muss das folgende Format haben:Procedure NavigationCallback(Gadget, Url$) ; ; Geben Sie #True zurück, um diese Navigation zu erlauben, oder #False um sie zu unterbinden. ; ProcedureReturn #True EndProcedure- GetGadgetAttribute(): Ermittelt die folgenden Attribute:#PB_Web_ScrollX : Ermittelt die horizontale Scroll-Position. #PB_Web_ScrollY´ : Ermittelt die vertikale Scroll-Position. #PB_Web_Busy : Gibt einen Wert ungleich Null zurück, wenn das Gadget mit dem Laden einer Seite beschäftigt ist. #PB_Web_Progress : Gibt den aktuellen (manchmal geschätzten) Fortschritt nach einem #PB_EventType_DownloadProgress Ereignis zurück. #PB_Web_ProgressMax : Gibt den aktuellen (manchmal geschätzten) maximalen Fortschritt #PB_EventType_DownloadProgress Ereignis zurück. #PB_Web_BlockPopups : Ermittelt die aktuelle Einstellung zum Abblocken von Popup-Fenstern. #PB_Web_BlockPopupMenu: Ermittelt die aktuelle Einstellung zum Abblocken des Popup-Menüs. #PB_Web_NavigationCallback: Ermittelt den aktuellen Navigations-Callback (falls es einen gibt).Hinweise: Popup-Fenster und Popup-Menüs werden vom WebGadget nicht auf Linux unterstützt. Trotzdem kann die #PB_Web_BlockPopups Konstante gesetzt werden, um das #PB_EventType_PopupWindow Ereignis zu aktivieren. Das gleiche gilt für #PB_Web_BlockPopupMenu.
Die folgenden Typen von Ereignissen können bei diesem Gadget auftreten:#PB_EventType_TitleChange : Der Seitentitel hat sich geändert. #PB_EventType_StatusChange : Die Status-Nachricht hat sich geändert. #PB_EventType_DownloadStart : Ein Seiten-Download startete. #PB_EventType_DownloadProgress: Fortschritt-Informationen sind mit GetGadgetAttribute() verfügbar. #PB_EventType_DownloadEnd : Ein Seiten-Download endete (abgeschlossen oder abgebrochen). #PB_EventType_PopupWindow : Ein Popup-Fenster wurde abgeblockt. #PB_EventType_PopupMenu : Das Popup-Menü wurde abgeblockt (zeigen Sie ein eigenes Menü stattdessen).Hinweis: Unter Microsoft Windows benutzt das WebGadget das Internet Explorer 4.0+ ActiveX Objekt. Dies bedeutet, dass IE installiert sein muss (standardmäßig installiert auf Win98/ME und Win2000/XP). Die ATL.dll (befindet sich im Verzeichnis PureBasic\Compilers\) wird ebenfalls benötigt, und zwar im gleichen Verzeichnis wie das Executable.
Als eine Alternative kann stattdessen das Mozilla ActiveX (http://www.iol.ie/~locka/mozilla/mozilla.htm) verwendet werden, wenn der #PB_Web_Mozilla Flag angegeben wurde (das Mozilla ActiveX muss separat installiert werden, es ist bei FireFox oder Mozilla nicht dabei).Beispiel:
If OpenWindow(0, 0, 0, 600, 300, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) WebGadget(0, 10, 10, 580, 280, "http://www.purebasic.com") ; Hinweis: wenn Sie eine lokale Datei benutzen möchten, dann ändern Sie den letzten Parameter ; in "file://" + Pfad + Dateiname Repeat Until WaitWindowEvent() = #PB_Event_CloseWindow EndIf
Beispiel 2: (mit Navigations-Callback); Dieses Beispiel zeigt die PureBasic.com Webseite an. Innerhalb der Callback-Prozedur ; wird das Navigieren zur 'News' Seite verhindert (#False zurückgegeben), jedoch für ; alle anderen Seite erlaubt (#True zurückgegeben). Procedure NavigationCallback(Gadget, Url$) If Url$= "http://www.purebasic.com/news.php" MessageRequester("", "No news today!") ProcedureReturn #False Else ProcedureReturn #True EndIf 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") SetGadgetAttribute(0, #PB_Web_NavigationCallback, @NavigationCallback()) Repeat Until WaitWindowEvent() = #PB_Event_CloseWindow EndIf
Unterstützte OS
Alle