エディットボックスのカーソル位置取得について・・・。

ActiveBasicでのプログラミングでわからないこと、困ったことなどがあったら、ここで質問してみましょう(質問を行う場合は、過去ログやWeb上であらかじめ問題を整理するようにしましょう☆)。
返信する
メッセージ
作成者
DarkSky

エディットボックスのカーソル位置取得について・・・。

#1 投稿記事 by DarkSky »

お初にお目にかかります。ABビギナーのDarkSkyです。
今プログラミングの習作にと、アプリケーションを作っているのですが、それで少しお伺いしたい事があります。
RADツールでエディットボックスとボタンを作り、ボタンが押された時にEM_GETSELでカーソル位置を取得、
そしてカーソル位置に文字列を挿入・・・という風な形にしたいのですが、
エディットボックスにフォーカスがない時は、末尾に挿入したいのです。
最初はメッセージの返値でフォーカスの有無が分かるかな、と思ったのですが、
エディットボックスの先頭にカーソルがある場合、0が帰ってくる事が分かりました。
これでは先頭にカーソルがある(=先頭に挿入したい)か、フォーカスがない(=末尾に挿入したい)か判断できません。
この二つを簡単に判断する技はあるのでしょうか?

GetFocusとエディットボックスのハンドルを比べて・・・と思っていたのですが、重大な事実が発覚。
そもそもクリックイベントでこの判断を行うようにしているので、クリックしたボタンにフォーカスが移っちゃってます(泣
八方塞がりのようです。誰か教えて頂けませんか?
7
記事: 473
登録日時: 2005年5月31日(火) 18:51
お住まい: 新潟県
連絡する:

Re: エディットボックスのカーソル位置取得について・・・。

#2 投稿記事 by 7 »

> お初にお目にかかります。ABビギナーのDarkSkyです。
初めまして。ABのミドルユーザーぐらいにはなれたかな!?と思っている7です。

> エディットボックスにフォーカスがない時は、末尾に挿入したいのです。
エディットボックスのフォーカス状態を持つ変数を宣言し、それを判断してやることで、一応できました。 > GetFocusとエディットボックスのハンドルを比べて・・・と思っていたのですが、重大な事実が発覚。
> そもそもクリックイベントでこの判断を行うようにしているので、クリックしたボタンにフォーカスが移っちゃってます(泣
失礼なんですけど、フォーカスを持つかどうかで判断して処理を行うこと自体が間違ってるんじゃないでしょうか?
こんな処理するの初めてなんですけど、結構する人多いんでしょうかね。
ゲスト

Re: エディットボックスのカーソル位置取得について・・・。

#3 投稿記事 by ゲスト »

7さんご回答ありがとうございます。試してみると、期待通りの動作が得られました。感謝の限りです。

> 失礼なんですけど、フォーカスを持つかどうかで判断して処理を行うこと自体が間違ってるんじゃないでしょうか?
> こんな処理するの初めてなんですけど、結構する人多いんでしょうかね。

うーん、元々はフォーカス&カーソル位置に関係なく末尾に追加していたのですが、
これじゃあ不便だなという事でつけてみたんです。
もうちょっと他の方法も吟味してみる必要がありそうですね。
改めて、ありがとうございました。
DarkSky

#4 投稿記事 by DarkSky »

あ。名前入れ忘れてました。すみません。
上のレスは僕です。
返信する