• ベストアンサー

Memoコントロールの1行あたりの格納可能桁数は?

BCB5を使用しています。 Memoコントロールにテキストを表示するテストプログラムを作っています。 表示するテキストはFileから読み込んでいます。 (本番では、Fileのほか、クリップボードからの貼り付けもあります。) MemoコントロールのWordWrapはfalseとなっています。 ところが、1行あたりの桁数が多い場合は1024桁を超える部分は改行されてしまいます。 1024桁を超えていても改行せずに1行の中に収めたいのですが、可能でしょうか?

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

  • ベストアンサー
  • hidebun
  • ベストアンサー率50% (92/181)
回答No.1

そんなやり取りがあったので、英語ですが貼っておきます。 http://www.mofeel.net/1276-borland-public-cppbuilder-vcl-components-using/4628.aspx これの中に、これはOSの縛りで、 INFO: Size Limits for a Multiline Edit Control: http://support.microsoft.com/kb/74225/en-us 最大1行1024文字、行数16350行以上は無理だと書いています。 バッファについて触れられているので、もしかしたらハックする方法があるかもしれません。 が、先のリンクの方で、RichEditなら4096文字までいける、と書いている人がいるので、 そちらに変更できるかどうか、検討されてはいかがでしょうか?

CLMN
質問者

お礼

ありがとうございました。 OSの制限なら仕方ないですね。 RichEditへの切り替えを検討します。 幸い、コントロールから1行づつ文字列を取得して処理する、 というプログラムなので、取り出しのところだけ直せば使えそうです。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 複数行のテキストボックスを受け取って、改行させたい。

    複数行のテキストボックスを受け取って、改行させたい。 お世話になります。ASP.NET VB2005を使っています。 Byrefでテキストボックスと、ByValで何桁目で改行させたいかを受け取って、 テキストボックスの内容を指定桁数で改行を入れたいのですが、 どのようにすればいいのでしょうか? 1行目が何桁あるかを判断する。 指定された桁数以上あったら改行させる。 という事を実現したいと考えています。 以上です、宜しくお願い致します。

  • ButtonコントロールのTEXTを複数行表示するには?

    ButtonコントロールのTEXTを複数行表示したいのですが、文字を沢山書いても改行されず1行の表示になってしまいます。どうすれば複数行表示できるでしょうか?VS2005を使用しています。

  • テキストボックス行の桁数を制限したいです VB.NET

    VB.NETのテキストボックスなのですが、 マルチラインのテキストボックスで 行の桁数を10桁などに制限したいです。 全角半角混在などの処理もしないとならないと思うのですが、 良い方法などありましたらアドバイス頂ければ幸いです。 よろしくお願い致します。

  • アクセスで桁数をそろえ数字の前に0をつけたい

    例えば、 12 345 5678 という数字があり、桁数を6桁表示にさせます。 000012 000345 005678 エクセルであれば =TEXT(A1,"000000") で可能ですがアクセスのフィールドでは TEXTが使用できません。 どうのようにすればいいのでしょうか?

  • 有効桁数の数え方・誤差

    actionscriptをやっているのですが、有効桁数の数え方がよくわかりません。 たとえばNumber(有効桁数15桁)で public function sample() { var tf : TextField = new TextField(); var suuji : Number = 0.999; var suuji2 : Number = 1.001; var kekka : Number; kekka = suuji2 - suuji; tf.text = "" suuji2 + "-" suuji + "=" + kekka; } というものを実行させた場合kekkaが0.0019999999999998908になるのですが、この際の各々の変数の有効桁数は suuji 3桁 suuji2 4桁 kekka 0桁 という解釈で良いのでしょうか? そしてこの場合は桁落ちが起きていると言えるのでしょうか? また、この際にkekkaに誤差がでるのはNumberの有効桁数が15桁であるため、それ以降の桁に勝手に数字が入れられるということでしょうか? (0.999が勝手に0.9990000000000001092になる) もうひとつわからないことがあって、これは型の有効桁数を調べるプログラムなんですけど、 public function sample2() { var n : int; var sb : Number,sn : Number,t : Number; var tf : TextField = new TextField(); tf.border = true; tf.width = 400; tf.height = 300; n = 1; sn = t = 1.0; sb =0.0; while(sn != sb){ tf.appendText(n + ":" + sn + ":" + t + "\n"); n++; t = t / 10.0; sb = sn; sn = sb + t; } addChild(tf); } を実行すると 1:1:1 2:1.1:0.1 3:1.11:0.01 4:1.111:0.001 5:1.1111:0.0001 6:1.11111:0.00001 7:1.111111:0.0000010000000000000002 8:1.1111111:1.0000000000000002e-7 9:1.11111111:1.0000000000000002e-8 10:1.111111111:1.0000000000000003e-9 11:1.1111111111:1.0000000000000003e-10 12:1.11111111111:1.0000000000000003e-11 13:1.1111111111110001:1.0000000000000002e-12 14:1.1111111111111:1.0000000000000002e-13 15:1.11111111111111:1.0000000000000002e-14 16:1.1111111111111112:1e-15 と表示されるのですが、これだと16行目の有効桁数が16桁になっているのでしょうか? しかしそれだと型の有効桁数と矛盾するので、たまたま16桁目が1だっただけで有効桁数は15ということでしょうか? また、tに2や3の数字が勝手に入れらていますが、これも上記のように有効桁数ではない部分に勝手に数字を入れられているということでしょうか? 長文、また見辛く申し訳ありません。

  • SQL*Loaderで桁数チェック

    SQL*Loaderの際に固定長ファイルの桁数をチェックすることは可能でしょうか? 上記を行いたい理由は固定長ファイルで取り込む際に、行ごとに桁数をチェックをし、何桁以外ならエラーとしてはじくという処理を行いたいからです。 Oracleのバージョンは9iです。 よろしくお願いします。

  • ButtonコントロールのText

    VS2005を使用しています。 言語は主にVC#,VC++です。 ButtonコントロールのTextで表示する文字列を2行にしたいのですが、 どうにかして改行させることはできないでしょうか? 今はスペースを入れて強引に二行になるようにしていますが、 \nのように改行コードなどで設定できると便利ですよね。。。 もし、そのような小技をご存知の方がいらっしゃれば、 ご教授願います。

  • エクセルVBA 文字列複数行・列連続連結

    エクセルVBA 文字列複数行・列連続連結でお教え下さい A列に基本文字(縦順) B列~F列に複数行データー(文字・時間) 文字結合時に改行 例 A2&B2&改行&A3&C2&改行&A4&D2&改行・・・・・ 次のデーター行 A&B3&改行&A3&C3&改行&A4&D3&改行・・・・・ データーの最終行まで連続で このような複数行あるデーターの連続文字列連結をしたいのですが・・・ 文字列連結後は 1.指定セルに貼り付け 2.クリップボードに貼り付け 3.テキストファイルに保存 よろしくお願い致します

  • エクセル:必ず指定の桁数で表示させるには?

    エクセルで、1桁の数字でも必ず指定した桁数になるように したいのですが、適切な関数はありますか? 例えば2桁で表示させたいとき、「2」は「02」となるように することです。 わからないので、とりあえずif関数を使って、10以上ならそのまま、 それ以外なら"0"&「そのセル」という風にしています。 text関数とかであるのでしょうか?

  • 【Access97】指定した桁数で区切りたい

    txtファイルをAccessへインポートした後、項目毎に区切るためにMid関数を使用していますが、全角文字を2桁として認識してくれず区切り位置がおかしくなってしまいます。 同様の作業をExcelでやっても同じでした(添付画像参照、データは一部項目のみ抜粋)。 項目数=30個、桁数=一行につき255桁(固定)、1つのtxtファイル内のデータ行=200行以上、そのtxtファイル数が数十個あるので毎回Excelの『区切り位置指定ウィザード』を使用するのも大変です。 何とかAccessの更新クエリーで作業したいのですが、指定した位置で区切る方法、もしくは全角文字を2桁として認識させる方法はありませんか?