• ベストアンサー

CEdit

CEdit を使って、 長い文字列を表示したら 本来2行にわたって表示されるべきものが 同じ行に上書きされて表示されました。  原因と解決方法について アドバイスをお願いいたします。 ただし、 2台のコンピュータで、同じソースコードで作ったのに、 Pen4 3GH, メモリー1G の物では正常に表示されて セルロン500MH、メモリー300M の物では、同じ行に2重に表示されます。 不思議です。  現在は CRichEditCtrl を使って表示するようにしているので どちらも大丈夫ですが、 気持ちが悪いので質問しました。

質問者が選んだベストアンサー

  • ベストアンサー
  • sha-girl
  • ベストアンサー率52% (430/816)
回答No.1

2台のコンピュータ それぞれOSは異なりませんか? (どっちかがwin2000で一方が98とか?) 上書きされて表示されるのは 改行コードがLF(\n)だからだと思います。 改行コードをCRLF(\r\n) にしてみてください。それで セレロン500(win98?)の方でもきちんと表示されると思います。

uyama33
質問者

補足

OSはどちらも2000サーバー 表示しているファイルは、 同じ物をコピーしています。 不思議です。

その他の回答 (2)

noname#11476
noname#11476
回答No.3

全く自信ないですが、両方のコンピュータのシステムフォントは同一ですか? あるいはフォントの指定をしていた場合、片方のシステムのフォントがおかしいなどと言うことは?

uyama33
質問者

補足

設定は、インストールしたときのままで 同じようにインストールしています。 設定はどちらも同じです。  長い行を途中で改行して 短い2行にして表示すると 重なりはなくなります。  1つの行の長さはかなり長く、 128または256文字を越えています。

  • sha-girl
  • ベストアンサー率52% (430/816)
回答No.2

VC6?でしょうか 両方ともSP5はあててますか? あとOSのアップデートと。。 とりあえず改行コードをCRLFにすれば 直るとと思いますがどうでしょう?

uyama33
質問者

補足

VC++ 6.0 エンタープライズエディションです。 両方とも同じ状態です。 SP5は両方とも当ててありません。 2000サーバーには SP4 が当ててあります。 画面をよく見たらつぎのようになっていました。 長い文字列のある行が ”あいうえおかきくけこさしすせそ ” だったとします。 重なりは、この行の 先頭の文字と、同じ行の最後の文字の幾つか が重なっていました。 'あ'の上に、'す' 'い'の上に、'せ' 'う'の上に、'そ' が重なる状態です。  本来のつぎの行は、 ちゃんと次の行になっていました。

関連するQ&A

専門家に質問してみよう