更新履歴の3点について。
・ウェブ送信機能。 辞書を使えたり検索できたりの機能。 元々ウェブメールを開く目的があったので予定の範疇だったんですけど、formに値を送信するのって何気に面倒なんですね。 別にプログラム上はどうということはないんですけど、その定義を各ユーザさんに書いてもらうとなると、さてどうすれば簡単になるかしらと。 結局どの値もtext形式で置き換えることができると分かったおかげでnameのみで指定できるようになりましたけど、それが分かるまでに結構時間がかかりました。
・未変換文字列中への、キー入力以外の文字挿入。 これのおかげでプログラムを根底から作り直しです(_ _;) できればこの方式1本にまとめたかったんですけど、IMEの仕様上、それは無理なんですね。 途中へ挿入しようとすると──やってみれば分かると思いますけど、以降の文字を一旦全部消して挿入してまた戻すという作業が必要になるんです。たった数文字でも結構ちらつき&時間がかかります。
ちなみにこの機能付加のおかげで、ユーザ定義文字列とかを未変換文字列として挿入できるようになってます。 ポケベル打ちで空白の挿入ができるのもこのおかげです(キーストロークで空白を送ると変換処理になります)。
・編集メニュー(特に「元に戻す」)。 メニューを出すだけでも一苦労したんですけどね。 Shift+F10は潰してないのでやってみると分かると思いますけど、既存のメニューのせいでちらつきが出るんです。 あとショートカットキーを複数持たせるっていうのは実はVB6.0だと本来不可能で、その辺はちょっと裏技を使ったりとええ色々。
「元に戻す」のお話。 ThunderTextboxは、元に戻せる深度は1回です。 Ctrl+Zを押すと1つ元に戻り、もう1回押すとやり直します。これを、100回まで戻す←→やり直すができるようにいじり倒しました。
ただやるだけなら簡単なんですけどね。 値が変わるたびに全文を記憶していけばいいだけですから。 でもそんなことしてたらメモリをどんどん食いつぶします。 正直、この辺りで「やらなきゃ良かった」とか後悔し始めました(_ _;)
他所様のソフトウェアキーボードを触ってないので普通どのくらいの機能があるのか分かりませんけど、このテキストボックスのカスタマイズでちょっと手間をかけすぎたかなと。 でも、1回しか元に戻せないって不便ですしね。結果として、やって良かったと思います。 あと引用付きコピーとか。
さて、と。 これでようやっと他の作業とかできるようになります。 ……バグ報告さえこなければ、ですけど(汗)。
|