Seite 1 von 2
Webgadget: Klicks auf Buttons auswerten
Verfasst: 10.02.2015 17:47
von Delle
Hallo,
gibt's eine Möglichkeit die Klicks auf Buttons in einem Webgadget auszuwerten?
Es wird also ein Webgadget erstellt, mit HTML gefüllt (darunter <input type=button name=bla value=Irgendwas>) und wenn da dann draufgeklickt wird, soll PB das abfangen und dann eine Aktion starten (z.B. das Webgadget aktualisieren oder ein DIV entfernen etc.).
Re: Webgadget: Klicks auf Buttons auswerten
Verfasst: 10.02.2015 18:31
von NicTheQuick
Wenn nur simple Dinge innerhalb des WebGadgets passieren sollen, böte sich immer noch Javascript an. Das wäre an dieser Stelle zumindest am einfachsten.
Re: Webgadget: Klicks auf Buttons auswerten
Verfasst: 10.02.2015 18:44
von Delle
Yup so ist das auch geplant, aber "intern" soll eben z.B. noch ein DB-Eintrag entfernt werden.
Re: Webgadget: Klicks auf Buttons auswerten
Verfasst: 10.02.2015 20:29
von Kiffi
Du kannst im HTML den document.title verändern und PureBasic auf #PB_EventType_TitleChange horchen lassen:
Code: Alles auswählen
#Window = 0
#WebGadget = 0
Procedure WebGadgetTitleChangeEvent()
Select GetGadgetItemText(#WebGadget, #PB_Web_PageTitle)
Case "huhu"
Debug "'klick mich 1' gedrückt"
Case "haha"
Debug "'klick mich 2' gedrückt"
EndSelect
EndProcedure
OpenWindow(#Window, 0, 0, 400, 300, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
WebGadget(#WebGadget, 0, 0, 400, 300, "")
HTML.s = "<html><body>" +
"<input type='button' value='klick mich 1' onclick='document.title=" + Chr(34) + "huhu" + Chr(34) + "' /><br />" +
"<input type='button' value='klick mich 2' onclick='document.title=" + Chr(34) + "haha" + Chr(34) + "' />" +
"</body></html>"
BindGadgetEvent(#WebGadget, @WebGadgetTitleChangeEvent(), #PB_EventType_TitleChange)
SetGadgetItemText(#WebGadget, #PB_Web_HtmlCode, HTML)
Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow
Grüße ... Peter
Re: Webgadget: Klicks auf Buttons auswerten
Verfasst: 10.02.2015 20:32
von Delle
Genau sowas meinte ich! Danke!

Re: Webgadget: Klicks auf Buttons auswerten
Verfasst: 10.02.2015 20:42
von Nino
Re: Webgadget: Klicks auf Buttons auswerten
Verfasst: 10.02.2015 21:11
von ts-soft
Danke Peter,
funktioniert leider nur unter Windows
also doch javascript.
Re: Webgadget: Klicks auf Buttons auswerten
Verfasst: 10.02.2015 21:14
von NicTheQuick
ts-soft hat geschrieben:funktioniert leider nur unter Windows
also doch javascript.
So ist das bei PB die letzte Zeit immer öfter.
"Plattformunabhängigkeit? Nein, Danke!"

Re: Webgadget: Klicks auf Buttons auswerten
Verfasst: 10.02.2015 21:55
von Kiffi
wie sieht's denn hiermit aus?
Code: Alles auswählen
#Window = 0
#WebGadget = 0
Procedure NavigationCallback(Gadget, Url$)
Select StringField(Url$, 2, "#")
Case "huhu"
Debug "'klick mich 1' gedrückt"
Case "haha"
Debug "'klick mich 2' gedrückt"
EndSelect
ProcedureReturn #False
EndProcedure
OpenWindow(#Window, 0, 0, 400, 300, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
WebGadget(#WebGadget, 0, 0, 400, 300, "")
SetGadgetAttribute(0, #PB_Web_NavigationCallback, @NavigationCallback())
HTML.s = "<html><body>" +
"<input type='button' value='klick mich 1' onclick='window.location.href=" + Chr(34) + "#huhu" + Chr(34) + "' /><br />" +
"<input type='button' value='klick mich 2' onclick='window.location.href=" + Chr(34) + "#haha" + Chr(34) + "' />" +
"</body></html>"
SetGadgetItemText(#WebGadget, #PB_Web_HtmlCode, HTML)
Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow
Grüße ... Peter
Re: Webgadget: Klicks auf Buttons auswerten
Verfasst: 10.02.2015 23:06
von mk-soft
Geht unter Mac auch nicht
