2008-09-04
■リッチテキストボックスに泣かされる
顧客に作っているアプリケーションで、帳票に出力される内容(テキスト)を入力するのに、リッチテキストボックス(RichTextBox)を使用しています。結構な長文(契約の但し書きみたいな文章)を入力するとのことなので、普通のテキストボックスよりはいいだろう、テキストエディタ的だろう、ということでリッチテキストボックスにしたのですが・・・。
「入力した文章が、帳票に印刷されると表示が変わっている!」ということでした。要するに、リッチテキストボックスにたくさん文章を入力したんだけど、それを帳票で印刷してみると、自分が(お客さん)が入力した"とおり"に表示されていない、ということでした。
これに対応することになったので、
ですが、テストをやっていた担当SEが「なんか、前に入力した文字列(データベースから引っ張ってきて表示させた文字列)と、新しく入力した文字のフォントが"微妙"に違うんですけど・・・」と言ってきました。しかもそのせいで、リッチテキストボックスで1行に入力できる文字数と、クリスタルレポートで表示する1行の文字数が変わってきてると・・・。でも、リッチテキストボックスのフォント設定は正しいよなあ・・・、なんでだろう・・・、というか、なんだこれ!? もしかしてMSのバグですか?!
・・・と、バグであっても何とかしないといけないので、いろいろ調査しているとこんなのが見つかりました。
RichTextBox.LanguageOption プロパティ
「何だ、このプロパティ?」と思いながら、さらに調べてみると、
全ては時の中に… : 【VB.NET】リッチテキストのフォントが勝手に変更されるのを抑制する
なに!勝手にフォントが変わるだと!上記ブログを参考にプログラムを直してみるとビンゴでした。えー、なんで勝手にフォントを変えるんだよー。実はWordにもこんな機能(?)があるんだとか。
これで今日一日泣かされました。
- 3 http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&rlz=1T4GGIH_jaJP265JP265&q=うつ よっちゃん
- 2 http://d.hatena.ne.jp/asin/B0007TFCSO
- 2 http://images.google.co.jp/imgres?imgurl=http://f.hatena.ne.jp/images/fotolife/T/Tensor/20071006/20071006211327.jpg&imgrefurl=http://d.hatena.ne.jp/Tensor/20071006/1191677762&h=337&w=450&sz=109&hl=ja&start=113&usg=__5nIkIZY7_eBXl6FrPp5MFQkdn1E=&tbnid=WKRU
- 2 http://www.e-kaiseki.com/show.php?request=referer&q=&group=0&mode=0&date_car=&week=&month_car=2008-09&sort=pagina
- 2 http://www.google.co.jp/reader/view/
- 2 http://www.google.co.jp/search?hl=ja&q=FF11+Config&lr=lang_ja
- 2 http://www.google.co.jp/search?hl=ja&q=ff11+コンフィグ&lr=
- 2 http://www.google.co.jp/search?q=FF11+コンフィグ&lr=lang_ja&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja:official&client=firefox-a
- 2 http://www.google.co.jp/search?sourceid=navclient&aq=t&hl=ja&ie=UTF-8&rlz=1T4GPTB_jaJP291JP291&q=FFXI+Config
- 2 http://www.google.com/search?num=50&hl=ja&q=リッチテキストボックス+フォントが変わる&lr=lang_ja
たま 2008/09/06 08:50 そんなときは呟くのです。
「勝手にフォントが変わるだって!! そう、それはMSクオリティー」
最近はネットとか漁ると、同じ目にあった人にであうこと多いから助かりますが。