Startseite › Foren › Deutsches LiveCode-Forum › Worte im Textfeld durch einfachen Klick markiere
Schlagwörter: Textfeld Worte selektieren ohne Dopelklick
- Dieses Thema hat 6 Antworten und 4 Teilnehmer, und wurde zuletzt aktualisiert vor 1 Jahr, 3 Monaten von
Peter_M.
-
AutorBeiträge
-
-
November 30, 2023 um 14:38 Uhr #47821
Hallo Forum,
ich möchte Worte in einem Textfeld – statt wie vorgegeben per Doppelklick – durch einfachen Mausklick selektieren. Ist das per LiveCode möglich?
Viele Grüße
Peter
-
November 30, 2023 um 15:50 Uhr #47822
Hi Peter,
nein, das geht nicht, da bearbeitbare Felder keine „mouseup“ Message erhalten und
die „mousedown“ Message nur bei gedrückter RECHTER Maustaste (pButtonNumber = 3)
gesendet wird. Um z.B. ein Kontextmenü aufklappen zu lassen.Gruß
Klaus
-
Dezember 1, 2023 um 00:12 Uhr #47823
Hallo Peter
Ich weiss nicht, ob du so etwas meinst …
Du könntest dir das „einfache“ Anklicken (oder Tippen auf dem Tablet) auch zusammenbauen. Dazu brauchst du ein Feld „Textfeld“ und eine Variable „Woerterliste“:
on mouseup global gWoerterliste -- Hintergrundfarbe des angecklickten Wortes ändern if the clickText is not among the words of gWoerterliste then -- Hintergrundfarbe setzen Wort in Liste aufnehmen set the backgroundcolor of the clickText to red put the clickText after gWoerterliste else -- Hintergrundfarbe entfernen set the backgroundcolor of the clickText to empty -- Wort aus Liste entfernen put wordOffset(the clickText, gWoerterliste) into WortNummer delete word WortNummer of gWoerterliste end if end mouseup
Das Handling der Wörter (markiert oder nicht) übernimmt die Variable „gWoerterliste“.
-
Dezember 1, 2023 um 03:04 Uhr #47824
Danke Klaus, das habe ich bereits befürchtet. Deine Antwort erspart mir weiteres erfolgloses Herumprobieren.
-
Dezember 7, 2023 um 15:19 Uhr #47831
Hi Peter,
kannst Du den Kontext deiner Idee noch mehr ausführen, damit wir verstehen können, was Du genau vorhast:
Du hast ja bisher viel für das Smartphone entwickelt, ist das dafür?
Warum soll der Benutzer den Text auswählen, was passiert damit?
Liebe Grüße
Torsten
-
Dezember 8, 2023 um 07:51 Uhr #47835
Hallo Klaus,
noch mal vielen Dank für deine Tipps. Hier meine Lösung für Handys zum Löschen von durch Kommata getrennten Elementen eines Textfeldes nach einfachem Tippen auf dieses. Der Löschvorgang selbst wird mittels eines Buttons „Löschen“ durchgeführt. Zunächst der Code für das Textfeld:on selectionChanged global ct if the clickText is not among the words of ct then set the backgroundcolor of the clickText to red put the clickText into ct enable btn"Löschen" else set the backgroundcolor of the clickText to white put wordOffset(the clickText, ct) into WortNummer delete word WortNummer of ct disable btn"Löschen" end if end selectionChanged
Hier der Code für den Button:
on mouseUp global ct disable me set the itemDelimiter to "," put text of fld"Textfeld" into ek put itemOffset(ct,ek) into wn delete item wn of ek put ek into fld"Textfeld" end mouseUp
Dieser Code funktioniert. Entscheidend ist die Benutzung von „selectionChanged“ statt „mouseUp“, da letzterer Event nur mit auf dem Handy nicht möglichem Rechtsklick funktioniert.
Gruß
Peter -
Dezember 8, 2023 um 10:26 Uhr #47836
PS: Ich bin mir bewusst, dass mein Code derzeit noch korrekturbedürftig und optimierungswürdig (z.B. im Hinblick auf Mehrfachlöschungen) ist, komme aber aufgrund meiner sonstigen Verpflichtungen derzeit kaum zum Programmieren. Sobald der Code in diesem Sinne weiterentwickelt ist, werde ich ihn an dieser Stelle veröffentlichen.
-
-
AutorBeiträge
- Du musst angemeldet sein, um auf dieses Thema antworten zu können.