Startseite › Foren › Deutsches LiveCode-Forum › Mit Button Zeitzone von der Uhr ändern
Schlagwörter: Uhr.Zeitzone
- Dieses Thema hat 17 Antworten und 2 Teilnehmer, und wurde zuletzt aktualisiert vor 6 Jahren, 7 Monaten von Klaus Major.
-
AutorBeiträge
-
-
März 22, 2018 um 18:30 Uhr #4793
Hallo unszwar habe ich die Frage wie man mit einem Skript den man z.B. auf einem Button legt dann die Zeitzone von einer bestimmten Uhr ändern kann. Hier mein Vorschlag der leider nicht geht.
set the timeZone of clock “clock” to hawaii
LG Sebastian
-
März 22, 2018 um 18:37 Uhr #4795
Beinahe! 🙂
…
set the timezone of WIDGET “clock” to XXXX
…
XXXX = Offset zu “Universal time (UTC)” in SEKUNDEN.
https://de.wikipedia.org/wiki/Koordinierte_Weltzeit
Ein blick in das Dicntionary ist IMMER eine gute Sache! 😎 -
März 22, 2018 um 18:42 Uhr #4797
Danke
-
März 22, 2018 um 19:46 Uhr #4799
Ist es auch möglich das wenn man eine bestimmt Zeitzone in ein Textfeld schreibt das die Uhr dann automatisch aus dem Textfeld die Zeitzone entnimmt?
-
März 22, 2018 um 20:01 Uhr #4803
Sollte klappen, wenn du im Feld den entsprechenden Befehl in einen “on closefield” Handler dieses Feldes verpackst.
-
März 22, 2018 um 20:02 Uhr #4805
kannst du mal bitte ein beispiel Skrịpt schreiben für Uhr und für Textfeld?
LG Sebastian
-
März 22, 2018 um 20:27 Uhr #4807
Skript für das Feld:
## Wird aufgerufen, wenn das Feld verlassen (= sich der FOCUS ändert) wird und sich der Feldinhalt geändert hat: on closefield # Natürlich darf nur eine ZAHL in dem Feld stehen! put the text of me into tZeitDifferenz set the timezone of WIDGET "clock" to tZeitDifferenz end closefield ## Zur Sicherheit die Eingabe ins Feld auf ZAHLEN beschränken on keydown tKey if tKey is in "0123456789" then pass keydown else beep answer "Bitte nur Zahlen eingeben!" end if end keydown
Das Uhren-Widget benötigt kein Skript!
-
März 22, 2018 um 20:42 Uhr #4809
Und wie stell ich den die Uhrzeit ein?
-
März 22, 2018 um 21:03 Uhr #4811
Gern geschehen! 😎
Aber es heisst DENN, “Und wie stell ich DENN die Urzeit ein”! Weitersagen!
Vielleicht ist Dir schon aufgefallen, daß die Uhr automatisch richtig geht, wenn man auf das Browse Tool umschaltet? Das Widget holt sich immer die Uhrzeit vom darunterliegenden Betriebsystem, die Uhrzeit kannst Du nicht einstellen.
Wenn Du “the timezone” des Widgets setzt, stellt sie sich auch automatisch um.
-
März 22, 2018 um 21:16 Uhr #4813
Erstmal danke für deine ganzen schnellen Antworten und ja genau ich kann ja die Zeitzone auswählen und wenn ich das richtig verstanden habe ist das Script was du vorhin geschrieben hast das ich die Zeitzone über das Textfeld eingeben kann aber wie mache ich das jetzt
-
März 22, 2018 um 22:16 Uhr #4817
Bitte setze doch hier und da mal ein paar Kommata und einen Punkt, das kann man sehr schlecht lesen, danke. Oder tippst Du auf einem Handy?
Wie “aber wie mache ich das jetzt”?
Ist doch Deine Idee, oder nicht? 😎Na gut:
1. Erstelle auf einer Karte ein Uhren Widget und ein Feld.
2. Für das Feld stellst Du im Inspektor “autotab” (Tab on return) ein, also die entsprechende Checkbox anklicken. Diese Propertey sorgt dafür, daß ein TAB, RETURN oder ENTER im Feld selbiges schliesst und somit das Skript aufruft. Das wird aber nur funktionieren, wenn mindestens ZWEI bearbeitbare Felder auf der Karte liegen. Ist das nicht der Fall, reicht es auch, NEBEN das Feld zu klicken, um es zu “schliessen” und sonmit das Skript aufzurufen.
3. Dann dem Feld mein Skript von oben zuweisen.
4. Fertig!Nun mal eine Zahl*** ins Feld eingeben und auf die RETURN oder ENTER Taste drücken.
Und denk dran, die benötigten Zahlen sind Sekunden.*** Es können auch negative Zahlen sein, also z.B. -7200
Dazu musst du aber diese Skriptzeile ändern und das Minuszeichen – als erlaubtes Zeichen im IF Fall hinzufügen:
…
if tKey is in “-0123456789” then
… -
März 23, 2018 um 13:02 Uhr #4834
Danke. So das mit dem Textfeld geht, aber das mit dem Button funktioniert irgendwie nicht. Da ändert sich kein einziger Zeiger in der Uhr.
LG Sebastian
-
März 23, 2018 um 13:14 Uhr #4836
Welcher Button? Mit welchem Skript?
Nun lass Dir doch bitte nicht alles aus der Nase ziehen! 🙂
-
März 23, 2018 um 13:27 Uhr #4838
Na ein Standardbutton mit dem Skript was du geschrieben hattest:set the timezone of WIDGET “clock” to XXXX
…
XXXX = Offset zu “Universal time (UTC)” in SEKUNDEN. -
März 23, 2018 um 13:43 Uhr #4840
Wenn das selbe Skript vom Feld erfolgreich ausgeführt wird,
müsste der Button genau so funktionieren!?
Gibt es eine Fehlermeldung? Welchen Wert hast Du denn angegeben?
Hoffentlich nicht wirklich XXXX! 😎 -
März 23, 2018 um 13:46 Uhr #4842
nein ich habe nicht xxxx angegeben sondern 3600.
-
März 23, 2018 um 13:54 Uhr #4844
War nur ein kleiner Test Deiner Aufmerksamkeit! 😀
Nun, 3600 Sekunden sind genau eine Stunde und das IST bereits der Offset für unsere Zeitzone hier in D!
Schau Dir die “timezone” im Inspektor für das Widget an.Gib mal 7200 ein, dann siehst Du auch was in der Uhr, gib 0 ein und Du siehst die originale UTC,
nämlich eine Stunde früher als in Deutschland.Auf der oben erwähnten Wikipedia-Seite gibt es ein schönes und großes Bild aller Zeitzonen, guck Dir das mal genauer an.
-
März 23, 2018 um 14:21 Uhr #4846
Gut gemeinter Rat:
Gewöhn Dir an, solchen Sachen (Zeitzone von Deutschland etc.!) selber zu recherchieren.
Als angehender Programmierer musst Du Dich leider um sehr viele Sachen kümmern und Hintergrundrecherche über alle möglichen Zusammenhänge und Fakten wie hier gehört nun mal dazu.
-
-
AutorBeiträge
- Du musst angemeldet sein, um auf dieses Thema antworten zu können.