Startseite › Foren › Deutsches LiveCode-Forum › Wörter in einer anderen Card ersetzen mit Option Menu
Schlagwörter: Ersetzen, Option Menu, Replace
- Dieses Thema hat 10 Antworten und 2 Teilnehmer, und wurde zuletzt aktualisiert vor 3 Jahren, 10 Monaten von Anonym.
-
AutorBeiträge
-
-
Dezember 18, 2020 um 18:13 Uhr #25212Anonym
Hallo Zusammen,
ich hab eigentlich ein ziemlich simples, aber mich schon überforderndes Problem:
Ich möchte im Option Menu eine Auswahl treffen, diese soll dann in der nächsten Card ein Wort in einem vorhandenen Text ersetzen.
Das ganze habe ich so versucht:
on menuPick pItemName
switch pItemName
case “Çambası”
replace “Taskiran” in field “1” of card “Card2” with “Çambası”
end switch
end menuPickLeider vergebens 🙁
was mache ich falsch?Danke im voraus
-
Dezember 18, 2020 um 18:41 Uhr #25214
Merhaba Ali,
willkommen im Forum!
Ganz wichtig:
NIEMALS ein Objekt in LC mit einer Nummer benennen!
-> field “1”
wird dann hier von LC als
-> field 1
interpretiert, auch wenn es das zweite Feld ist!
Zur Not ein Präfix vorstellen, also fld “f1” oder so.Im Prinzip ist Dein Skript korrekt, nur die Reihenfolge stimmt nicht. 🙂
So klappts:... replace “Taskiran” with "Çambası" in field 1 of card "Card2" ...
🙂
Gruß
Klaus
-
Dezember 18, 2020 um 20:44 Uhr #25219Anonym
Hallo Klaus,
danke für Deine Hilfe, jetzt bin ich ein Schritt weiter. Es gibt keine Fehlermeldung mehr.
Allerdings passiert nichts… Ich wähle im Option Menu den Punkt “Çambası” aus, doch der Text in Card2 bleibt gleich (das Wort was ich ersetzt haben möchte bleibt leider gleich).
-
-
Dezember 18, 2020 um 21:14 Uhr #25220
Hm, ich habe es hier nachgestellt und fand das hier wie gewünscht in Feld 1 auf meiner Karte 2:
Feld 1 vorher:
replace Taskiran with Çambası in field 1 of card “Card2”
replace Taskiran with Çambası in field 1 of card “Card2”Feld 1 nachher:
replace Çambası with “Çambası” in field 1 of card “Card2”
replace Çambası with “Çambası” in field 1 of card “Card2”Mein Skripüt:
on menuPick pItemName switch pItemName case "Çambası" replace "Taskiran" with "Çambası" in field 1 of card 2 break end switch end menuPick
Schick mir mal eben den Stack, ich gucke mal schnell rein:
klaus AT major-k.deGruß
Klaus
-
Dezember 18, 2020 um 21:26 Uhr #25222Anonym
Hallo Klaus,
unfassbar aber mit deinem Skript hat es geklappt. Lag das am fehlenden “break”?
-
-
Dezember 18, 2020 um 21:32 Uhr #25223
Echt? Na, super! 😀
Nein, am fehlenden BREAK liegt es nicht, das kommt erst ins Spiel,
wenn Du mehr als einen CASE abhandeln willst.AHA!
Ich hab’s, in Deinem Skript sind die Anführungszeochen um “Taskiran” keine erlaubten
ASCII Zeichen, sondern ASCII -> 210 und nicht wie benötigt ASCII -> 34.
Das passiert des öfteren beim Kopieren und Einfügen.
Sieht man leider ganz schlecht, aber ich bin ja Brillenträger! 😀Gruß
Klaus
-
Dezember 18, 2020 um 21:39 Uhr #25225Anonym
Ach du meine Güte 🙂
Danke Dir vielmals Klaus, ich war schon am verzweifeln.
Ich wünsche dir (falls wir uns bis dahin nicht mehr lesen) ruhige Feiertage.
Bleibt gesund und schönen Abend nochGruß
Ali -
Dezember 20, 2020 um 21:43 Uhr #25282Anonym
Hallo Klaus,
nach dem das ganze mit Option Menu super geklappt hat (danke hierfür) habe ich ein neues, aber ziemlich ähnliches Problem:
Bei Option Menu musste wir nur eine Auswahl von 3 Items programmieren.. Was ist allerdings wenn ich keinen Option Menu button habe, sondern ein Textfeld?
Aus der Card Hauptseite steht ein Textfeld, dieser Inhalt soll eine Stelle des Textfeldes in der nächsten Card “Card2” ersetzen. Bislang ohne Erfolgreplace “Hidayet Öztürk’ün” with the text of “Yakini” in field “mesaj” of card Card2
Hast du vielleicht eine Idee
Gruß
Ali
-
-
Dezember 20, 2020 um 23:03 Uhr #25285
Hi Ali,
vielleicht fehlt hier nur die richtige “Adresse”! 🙂
... replace "Hidayet Öztürk'ün" with (the text of FIELD "Yakini" of cd "Hauptseite") in field "mesaj" of card "Card2" ## Eigennamen (Strings) IMMER in Anführungszeichen! Das muss mal gesagt werden! :-D ## Die Klammern sind nicht unbedingt nötig, aber manchmal ganz gut zum Verständnis. ...
Mit der richtigen Adresse kannst Du auf jedes Objekt in jedem Stack auf der gesamten Festplatte zugreifen und manipulieren!
Gruß
Klaus
-
Dezember 20, 2020 um 23:31 Uhr #25294Anonym
Hallo Klaus,
Ich danke dir erneut! Hat geklappt… Eigentlich ist das ziemlich logisch, wenn man die Adresse der Zeile, die ersetzt werden soll hinschreibt, aber die Adresse der Zeile die das ganze ersetzen soll vergisst kann das ja nichts werden.
Ich komme der Sache näher,
danke nochmals
schönen Abend
Gruß
Ali
-
-
Dezember 20, 2020 um 23:29 Uhr #25292
Falls Dein Englisch halbwegs passabel ist, empfehle ich Dir wärmstens diese Stacks für die Basics von LC:
http://www.hyperactivesw.com/revscriptconf/scriptingconferences.html
-
-
AutorBeiträge
- Du musst angemeldet sein, um auf dieses Thema antworten zu können.