- ベストアンサー
CEdit
CEdit を使って、 長い文字列を表示したら 本来2行にわたって表示されるべきものが 同じ行に上書きされて表示されました。 原因と解決方法について アドバイスをお願いいたします。 ただし、 2台のコンピュータで、同じソースコードで作ったのに、 Pen4 3GH, メモリー1G の物では正常に表示されて セルロン500MH、メモリー300M の物では、同じ行に2重に表示されます。 不思議です。 現在は CRichEditCtrl を使って表示するようにしているので どちらも大丈夫ですが、 気持ちが悪いので質問しました。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
2台のコンピュータ それぞれOSは異なりませんか? (どっちかがwin2000で一方が98とか?) 上書きされて表示されるのは 改行コードがLF(\n)だからだと思います。 改行コードをCRLF(\r\n) にしてみてください。それで セレロン500(win98?)の方でもきちんと表示されると思います。
その他の回答 (2)
全く自信ないですが、両方のコンピュータのシステムフォントは同一ですか? あるいはフォントの指定をしていた場合、片方のシステムのフォントがおかしいなどと言うことは?
補足
設定は、インストールしたときのままで 同じようにインストールしています。 設定はどちらも同じです。 長い行を途中で改行して 短い2行にして表示すると 重なりはなくなります。 1つの行の長さはかなり長く、 128または256文字を越えています。
- sha-girl
- ベストアンサー率52% (430/816)
VC6?でしょうか 両方ともSP5はあててますか? あとOSのアップデートと。。 とりあえず改行コードをCRLFにすれば 直るとと思いますがどうでしょう?
補足
VC++ 6.0 エンタープライズエディションです。 両方とも同じ状態です。 SP5は両方とも当ててありません。 2000サーバーには SP4 が当ててあります。 画面をよく見たらつぎのようになっていました。 長い文字列のある行が ”あいうえおかきくけこさしすせそ ” だったとします。 重なりは、この行の 先頭の文字と、同じ行の最後の文字の幾つか が重なっていました。 'あ'の上に、'す' 'い'の上に、'せ' 'う'の上に、'そ' が重なる状態です。 本来のつぎの行は、 ちゃんと次の行になっていました。
補足
OSはどちらも2000サーバー 表示しているファイルは、 同じ物をコピーしています。 不思議です。