HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2017
0506
keninput 内に入力されたテキストの最後の位置にカーソルを移動させたい3解決


ken

リンク

2017/5/6(Sat) 18:14:41|NO.79570

objprmなどでinputの内容を変更させた後にカーソルを入力されたテキストの最後にもっていきたいのですが、方法がわかりません。VBなどでは簡単に行えるようですが、HSPだと難しいのでしょうか?



この記事に返信する


MillkeySoftw

リンク

2017/5/6(Sat) 19:34:51|NO.79573

msgbox (EDIT) に対して直接メッセージを送る。
EM_SETSEL の wparam と lparam を文字列の終端のバイトを指定してメッセージを送るとキャレットを最後に移動できる。

#define EM_SETSEL 0x00B1 sdim Text,36000 Text = "あいうえお\nかきくけこ\nん" mesbox Text,200,200,1,36000 : ObjID = stat TextHWND = objInfo(ObjID,2) sendmsg TextHWND,EM_SETSEL,strlen(Text),strlen(Text)



MillkeySoftw

リンク

2017/5/6(Sat) 19:38:12|NO.79574

追記です。msgbox も input も同じ EDIT クラスなので、サンプルの msgbox を input に変更してね。



ken

リンク

2017/5/7(Sun) 18:52:50|NO.79596

MillkeySoftwさんほんとうにありがとうございました。

あんなにAPIを調べてどうしても解決できなかったのに、本当にあっけなく解決しました。
検索してもC関係の情報ばかりで、どうしてもEM_SETSELの使い方がわかりませんでした。



ONION software Copyright 1997-2023(c) All rights reserved.