作者: Peg
日時: 2002/7/16(01:35)
ビットウォークさん、山本さん、色々ありがとうございます。
非常に素早い対応で驚きました。

IME に関する衝撃の事実を知ってしまったらしいPegです。


>> 日本語入力ボックスの表示位置=カレット位置では…
> カーソル位置を計算するときにオフセットの加減算が
> 抜けてしまったことが原因です。
つまり、カーソル位置は自前で再計算しているのですね。
多分、そうなのでは と思ってたのですが…

そうだ。 初期の説明で「親ウインドウ内にとどまる」と
書いたのですが、これは「toplevelウインドウ内に…」の誤りです。
親ウインドウ(例:フレーム)内と言うことでは無いです。

・

今、頂いたパッチを当てて、MinGW 1.1 環境で
作成してみたもので確認してみました。
(gcc 3.1 だと何故かコンパイルエラーになってしまい
 作成出来ないので、MinGW 1.1(gcc 2.95.3-6)を使用)

結果、今回挙げた現象については改善されました。

> 他のウィジェットではどうでしょう?
> text widget(-wrap none)は大丈夫そうですけど...
text それと、 新しい spinbox についても確認しました。
念の為、 tk_getOpenFile tk_getSaveFile の入力部も確認しましたが、
こちらも、今回挙げた現象については問題無いようです。
めでたし、めでたし。

・

と思っていたのですが、別の動作でカレット位置が狂う現象を目撃(-o-;
まれに起きる程度のもので、重要度は低いですが挙げておきます。
色々、細かいことを言って申し訳ないですが、
時間が空いている時に確認してみて下さい。
ちなみに、画像のアドレスは前と同じです。

・ime06.jpg
  entry を 単純に pack したサンプル。【あ】を入力。(正常)

・ime07.jpg
  【あ】入力後にウインドウサイズを変えて【い】を入力。
  カレット位置がおかしい(前の座標から計算されている?)

・ime08.jpg
  以下のスクリプトを実行して、text に1文字ずつ入力。

  frame .f -width 200
  text .t
  pack .f .t -side left

  カレット位置がおかしい。
  この場合は【あ】の下くらいに【わ】が表示されるはず。

・ime09.jpg
  カレットは5行目にあります。(正常)

・ime10.jpg
  (カレットが見えなくなるまで)ウインドウサイズを変えて
  文字を入力してみると、IMEウインドウが突如表示される。

・ime11.jpg
  【あ】を連打。未確定状態(一般的な表示の例)

・ime12.jpg
  上記と同じく【あ】を連打。未確定状態(Tcl/Tkの場合)
  微妙に入力窓の改行がおかしい。
 (横幅=ウインドウの横幅? になっている?)

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
 地球に向かう子供達    Peg    email  :  peg@...
 http://www.geocities.co.jp/SiliconValley-Cupertino/3335/
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/