Skip to main content
Known Participant
9月 29, 2023 5:13 午前 UTC
解決済み

選択した範囲だけのテキストを追加するスクリプト作成について

スクリプトでテキストを入力できるウィンドウを作って、その入力欄(ウィンドウ)に入力したテキストの中から、一部を選択してテキストレイヤーを作ってくれるスクリプトを作ろうとしています。

 

たとえば、出てきたテキスト入力欄に「あいうえお」と入力して、「あいう」だけを選択したあと、「Add Text」というボタンを押すと「あいう」というテキストレイヤーができるイメージです。

 

入力欄に入力したテキスト「あいうえお」をそのままテキストレイヤーにするスクリプトはできたのですが、そこからテキストをマウスドラッグで選択して、「Add Text」を押しても、選択範囲がボタンを押すと同時に解除されてしまって、うまく選択範囲のみだけを抽出してくれません。

 

ChatGPTで調べた所、「SelectionStart」と「SelectionEnd」を使えばできるとのことだったのですが、それを使っても選択範囲はボタンを押した途端解除されてしまいます。

他にやり方があるのか、それとも他になにか必要なことはあるのでしょうか?

 

どなたかわかりましたらご教示いただければ助かります。

このトピックへの返信は締め切られました。
Participating Frequently
9月 29, 2023 5:37 午前 UTC

edittextオブジェクトにtextselectionプロパティがあるので
その値を使用するといいと思います。
古めのバージョンだとできないかもしれないですが
試した感じだと2020,2022,2023だと動作しました。
edittextのフォーカスが外れると選択が解除されるのは仕様かもしれないです。

返信数 2

Participating Frequently
9月 29, 2023 5:37 午前 UTC

edittextオブジェクトにtextselectionプロパティがあるので
その値を使用するといいと思います。
古めのバージョンだとできないかもしれないですが
試した感じだと2020,2022,2023だと動作しました。
edittextのフォーカスが外れると選択が解除されるのは仕様かもしれないです。

翻訳
hoshi999作成者
Known Participant
9月 29, 2023 7:02 午前 UTC

早急にご回答いただきありがとうございます!できましたー!大変助かりました。

 

翻訳