掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
Window10でTEditorコンポーネントのキャレットが消える問題への対応 (ID:149665)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
ざっくりと確認した感じ、CaretBeginUpdateとCaretEndUpdateの呼び出し回数が一致せずCaretBeginUpdateの方が多く呼び出される為キャレットが表示されない状態になっているようです。 WM_IMENOTIFYのIMN_OPENCANDIDATEが、変換前の文字入力毎に投げられててIMN_CLOSECANDIDATEが飛んできてないっぽいです。 非常に乱暴な方法としては、HEditor.pasのTEditor.WMImeCompositionメソッド内のPutStringToLine(S);の後でFCaretUpdateCountが0になるまでCaretEndUpdateを呼び出すと取りあえずキャレットは表示されるようになりました。 ただ、他に副作用が出る気がするのでどうなんですかね。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.