Aktuelle Zeit: 20.05.2019 06:44

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 81 Beiträge ]  Gehe zu Seite Vorherige  1 ... 4, 5, 6, 7, 8, 9  Nächste
Autor Nachricht
 Betreff des Beitrags: Re: SpiderBasic Library - Liste neuer Funktionen
BeitragVerfasst: 22.10.2018 15:21 
Offline
Moderator
Benutzeravatar

Registriert: 05.10.2006 18:55
Wohnort: Rupture Farms
Ich habe ein paar Codes von dir hinzugefügt:

Und von Danilo: https://forums.spiderbasic.com/viewtopic.php?f=9&t=55

Sehr geile Codes :allright:

_________________
BildBildBildBildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: SpiderBasic Library - Liste neuer Funktionen
BeitragVerfasst: 22.10.2018 16:02 
Offline
Moderator
Benutzeravatar

Registriert: 05.10.2006 18:55
Wohnort: Rupture Farms
Try und Catch:
Code:
EnableExplicit

Procedure TryCatch(try_callback, catch_callback)
  ! try {
  !   v_try_callback();
  ! } catch(error) {
  !   v_catch_callback(error);
  ! }
 
EndProcedure

;================================================== Beispielcode ==================================================

Procedure MyProc()
  ! own_javascripterror;
 
EndProcedure

Procedure MyErrorProc(error)
  Debug "Error: " + error
  ! console.log("Error: " + v_error.message);
 
EndProcedure

If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_ScreenCentered)
 
  TryCatch(@MyProc(), @MyErrorProc())
 
EndIf

_________________
BildBildBildBildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: SpiderBasic Library - Liste neuer Funktionen
BeitragVerfasst: 22.10.2018 16:18 
Offline
Moderator
Benutzeravatar

Registriert: 05.10.2006 18:55
Wohnort: Rupture Farms
Prozedur asynchron aufrufen:
Code:
EnableExplicit

Procedure CallAsynchronFunction(callback, delay)
  ! window.setTimeout(v_callback, v_delay);
 
EndProcedure

;================================================== Beispielcode ==================================================

Procedure Test()
  ButtonGadget(2, 50, 50, 200, 50, "Button was created late.", 0)
 
EndProcedure

If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_ScreenCentered)
  TextGadget(1, 10, 10, 100, 20, "Wait 3 seconds...", 0)
 
  CallAsynchronFunction(@Test(), 3000)
 
EndIf

_________________
BildBildBildBildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: SpiderBasic Library - Liste neuer Funktionen
BeitragVerfasst: 22.10.2018 16:22 
Offline
Moderator
Benutzeravatar

Registriert: 05.10.2006 18:55
Wohnort: Rupture Farms
URL ermitteln:
Code:
EnableExplicit

Procedure.s GetSiteURL()
  ! return window.location;
 
EndProcedure

;================================================== Beispielcode ==================================================

If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_ScreenCentered)
 
  Debug GetSiteURL()
 
EndIf

_________________
BildBildBildBildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: SpiderBasic Library - Liste neuer Funktionen
BeitragVerfasst: 22.10.2018 16:33 
Offline
Moderator
Benutzeravatar

Registriert: 05.10.2006 18:55
Wohnort: Rupture Farms
Weiterleiten auf eine Seite:
Code:
EnableExplicit

Procedure RedirectSite(url.s)
  ! window.location.href = v_url;
 
EndProcedure

;================================================== Beispielcode ==================================================

Procedure GadgetEvent()
  Select EventGadget()
    Case 1
      RedirectSite("https://www.google.de")
  EndSelect
 
EndProcedure

If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_ScreenCentered)
  ButtonGadget(1, 10, 10, 100, 20, "To Google", 0)
 
  BindEvent(#PB_Event_Gadget, @GadgetEvent())
 
EndIf

_________________
BildBildBildBildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: SpiderBasic Library - Liste neuer Funktionen
BeitragVerfasst: 22.10.2018 16:43 
Offline
Moderator
Benutzeravatar

Registriert: 05.10.2006 18:55
Wohnort: Rupture Farms
Seite zurück und vorwärts springen:
Code:
EnableExplicit

Procedure BackSite()
  ! window.history.back();
 
EndProcedure

Procedure ForwardSite()
  ! window.history.forward();
 
EndProcedure

;================================================== Beispielcode ==================================================

Procedure GadgetEvent()
  Select EventGadget()
    Case 1
      ! window.location.href = window.location.href + "?test=123";
    Case 2
      BackSite()
    Case 3
      ForwardSite()
  EndSelect
 
EndProcedure

If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_ScreenCentered)
  ButtonGadget(1, 10, 10, 480, 50, "Redirect this site to test to be able to use the buttons.", 0)
  ButtonGadget(2, 10, 80, 20, 20, "<", 0)
  ButtonGadget(3, 30, 80, 20, 20, ">", 0)
 
  BindEvent(#PB_Event_Gadget, @GadgetEvent())
 
EndIf

_________________
BildBildBildBildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: SpiderBasic Library - Liste neuer Funktionen
BeitragVerfasst: 22.10.2018 19:35 
Offline
Moderator
Benutzeravatar

Registriert: 05.10.2006 18:55
Wohnort: Rupture Farms
Es gibt jetzt AnkerGadget(), um zu beliebigen Abschnitten zu springen:
Code:
EnableExplicit

Procedure AnkerGadget(windowid, id_name.s, x, y)
  ! var AnkerGadget = document.createElement('a');
  ! AnkerGadget.name = v_id_name;
  ! AnkerGadget.className = "SB_AnkerGadget";
  ! AnkerGadget.style.cssText = "position: absolute; left: " + v_x + "px; top: " + v_y + "px; width: 0px; height: 0px;";
  ! v_windowid.content.appendChild(AnkerGadget);
 
EndProcedure

Procedure OpenWindowEx(window, y, x, innerwidth, innerheight, Title.s, Flags, ParentID)
  Protected ReturnValue
 
  ReturnValue = OpenWindow(window, y, x, innerwidth, innerheight, Title, Flags, ParentID)
 
  If Flags & #PB_Window_Background
    ! spider_WindowID(v_window).contentFrame.style.overflow = "auto";
    If innerwidth > 0
      ! spider_WindowID(v_window).content.style.width = v_innerwidth + "px";
    EndIf
    If innerheight > 0
      ! spider_WindowID(v_window).content.style.height = v_innerheight + "px";
    EndIf
  EndIf
 
  ProcedureReturn ReturnValue
EndProcedure

Macro OpenWindow(Window, y, x, InnerWidth, InnerHeight, Title, Flags = 0, ParentID = 0)
  OpenWindowEx(Window, y, x, InnerWidth, InnerHeight, Title, Flags, ParentID)
EndMacro

Procedure RedirectSite(url.s)
  ! window.location.href = v_url;
 
EndProcedure

;================================================== Beispielcode ==================================================

Procedure GadgetEvent()
  Select EventGadget()
    Case 1
      RedirectSite("#MyAnker")
  EndSelect
 
EndProcedure

If OpenWindow(0, 0, 0, 0, 3000, "Window", #PB_Window_Background)
  HyperLinkGadget(1, 10, 10, 100, 20, "Jump to anker", RGB(0, 0, 255), #PB_HyperLink_Underline)
 
  AnkerGadget(WindowID(0), "MyAnker", 0, 2000)
  TextGadget(2, 10, 2000, 200, 20, "Hello, good, you're here now. :-)", 0)
 
  BindEvent(#PB_Event_Gadget, @GadgetEvent())
 
EndIf

_________________
BildBildBildBildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: SpiderBasic Library - Liste neuer Funktionen
BeitragVerfasst: 22.10.2018 19:41 
Offline

Registriert: 27.11.2016 18:13
Wohnort: Erzgebirge
Hallo!

Ich hätte noch ein paar Plätzchen/ Kekse zu vergeben. :mrgreen:

Code:
Global.s SuperMerker, wer, ltime

;Beispiel für UTC-Time: "Mon, 22 Oct 2018 20:15:00"
;UTC ist nicht unbedingt die Zeit auf deinen Uhren.
;UTC = Coordinated Universal Time = abgestimmte Weltzeit

Procedure.s GetLocalTime(utc_time.s)
  ! var udate = new Date(v_utc_time)
  ! var ldate = new Date(Date.UTC(udate.getFullYear(), udate.getMonth(), udate.getDate(), udate.getHours(), udate.getMinutes(), udate.getSeconds()))
  ! return ldate
EndProcedure

Procedure.s GetUTCTime(local_time.s)
  ! var ldate = new Date(v_local_time)
  ! var udate = new Date(ldate.getUTCFullYear(), ldate.getUTCMonth(), ldate.getUTCDate(), ldate.getUTCHours(), ldate.getUTCMinutes(), ldate.getUTCSeconds());
  ! return udate
EndProcedure

Procedure SetCookie(name.s, value.s, utc_time.s = "0")
  If utc_time = "0"
    ! document.cookie = v_name + "=" + v_value + "; path=/;"
  Else ;läuft ab... (Standard: Läuft beim schließen des Browsers ab.)
    ! document.cookie = v_name + "=" + v_value + "; expires=" + v_utc_time + " UTC; path=/;"
  EndIf
EndProcedure

Procedure.s GetCookie(name.s)
  Protected c.s, out.s, pos.i
  ! v_c = document.cookie;
  For pos = 0 To Len(c)
    out = StringField(c, pos, ";")
    If FindString(out, name) > 0
      out = StringField(out, 2, "=")
      Break
    EndIf
  Next pos
  ProcedureReturn out
EndProcedure

SuperMerker = GetCookie("MeinKeks")

If SuperMerker <> ""
  ! alert("Willkommen zurück: " + v_supermerker);
Else
  ltime = GetLocalTime("Mon, 22 Oct 2018 18:15:00")
  ! v_wer = prompt("Wie heißen Sie ?", "");
  SetCookie("MeinKeks", wer, GetUTCTime("Mon, 22 Oct 2018 20:15:00"))
  ! alert("Ich merke mir deinen Namen bis zum folgenden Datum:\n"+ v_ltime);
EndIf


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: SpiderBasic Library - Liste neuer Funktionen
BeitragVerfasst: 22.10.2018 19:49 
Offline
Moderator
Benutzeravatar

Registriert: 05.10.2006 18:55
Wohnort: Rupture Farms
Danke für deinen Code, den ich in meinem Inhaltsverzeichnis aufgenommen habe. :allright:
Ich hätte aber gerne echte Kekse. :mrgreen:

_________________
BildBildBildBildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: SpiderBasic Library - Liste neuer Funktionen
BeitragVerfasst: 22.10.2018 20:23 
Offline
Moderator
Benutzeravatar

Registriert: 05.10.2006 18:55
Wohnort: Rupture Farms
Jetzt gibt es YouTubeGadget():
Code:
EnableExplicit

Procedure YouTubeGadget(windowid, gadget, x, y, width, height, video_id.s, autoplay, startposition, endposition, withcontrol, withfullscreen, nocookie)
  Protected domain.s
  Protected video_endposition.s
 
  If nocookie
    domain = "https://www.youtube-nocookie.com"
  Else
    domain = "https://www.youtube.com"
  EndIf
 
  ! var YouTubeGadget = document.createElement('iframe');
  ! YouTubeGadget.id = "SB_Gadget_" + v_gadget;
  ! YouTubeGadget.width = v_width;
  ! YouTubeGadget.height = v_height;
  ! YouTubeGadget.className = "SB_YouTubeGadget";
  If withfullscreen
    ! YouTubeGadget.setAttribute('allowFullScreen', '');
  EndIf
  If endposition
    video_endposition = "&end=" + Str(endposition)
  EndIf
  ! YouTubeGadget.style.cssText = "position: absolute; left: " + v_x + "px; top: " + v_y + "px; width: " + v_width + "px; height: " + v_height + "px;";
  ! YouTubeGadget.src = v_domain + "/embed/" + v_video_id + "?start=" + v_startposition + v_video_endposition + "&autoplay=" + v_autoplay + "&controls=" + v_withcontrol;
  ! v_windowid.content.appendChild(YouTubeGadget);
 
EndProcedure

;================================================== Beispielcode ==================================================

If OpenWindow(0, 0, 0, 820, 620, "Window", #PB_Window_ScreenCentered)
  YouTubeGadget(WindowID(0), 1, 10, 10, 800, 600, "cM8H5Tu3Hjk", 1, 120, 0, 1, 1, 0)
 
EndIf


@NicTheQuick
Bekomme ich Geld für die Werbung? :D

_________________
BildBildBildBildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 81 Beiträge ]  Gehe zu Seite Vorherige  1 ... 4, 5, 6, 7, 8, 9  Nächste

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu:  
cron

 


Powered by phpBB © 2008 phpBB Group | Deutsche Übersetzung durch phpBB.de
subSilver+ theme by Canver Software, sponsor Sanal Modifiye