~katsuhiko メッセージボード

back 1951-2000

2001-2050

2051-2100


2050 全ての行のアトリビュートを予め取得済みにするには? コメント数:  2件
  かとちん  | 2002/02/13 (水) 15:47
 http://homepage2.nifty.com/t-katochin
こんにちわ!

TEditorは,パーサを必要に応じて(画面に表示された分だけ)使うようですが
ファイルを読み込んだ時に,全ての行の ListData を取得済みにしておく最良の
方法ってありませんか?

苦肉の策で,1画面ずつスクロールさせてTEditorに情報を蓄えさせるようにして
いるのですが,他に良い手はないでしょうか。



2049 Re^4: 現在のキャレット位置を先頭からのバイト数で表す コメント数:  0件
  ゆうきひろ  | 2002/02/10 (日) 22:09
 http://homepage2.nifty.com/ultla7/mozart/_start.htm
 Kmさん、ありがとうございました。おかげでうまくいきました。キャレットの位置にちょっと手こずりましたです(^^;)。
//折り返しの行頭からキャレット位置まで消去
 with Editor1 do
 begin
  if (Lines.Text = '') or (Lines.Text = #13#10) then Exit;
  i := ColToChar(row, col);
  n := RowToLines(row);  r := Row;
  S := Lines[n];
  if S[i] in [#$81..#$9F, #$E0..#$FC] then
  begin
   dmy := Copy(S,1,i+1);
   Delete(S,1,i+1);
  end else
  begin
   dmy := Copy(S,1,i);
   Delete(S, 1, i);
  end;
  Lines[n] := S;
  Col := 0; Row := r-(Length(dmy) div WrapOption.WrapByte);
 end;



2048 Re^3: 現在のキャレット位置を先頭からのバイト数で表す コメント数:  1件
  Km  | 2002/02/10 (日) 17:30
こんにちは。元発言に、
>行頭からキャレット位置の前までを削除、あるいはキャレット位置から行末まで削除というような用途に使いたいのです。

とあったので、以下のような感じでいけると思うのですがどうでしょうか?

c := Editor1.ColToChar(row, col);
n := Editor1.RowToLines[row];
line := Editor1.Lines.Strings[n];
line := Copy(line, 1, c);
// Delete(line, 1, c);
Editor1.Lines.Strings[n] := line;



2047 Re^2: 現在のキャレット位置を先頭からのバイト数で表す コメント数:  2件
  ゆうきひろ  | 2002/02/10 (日) 14:42
 http://homepage2.nifty.com/ultla7/mozart/_start.htm
> ColToCharメソッドでLines上での文字インデックスが返ってくるので、これでどうでしょうか? 助言にしたがって以下のようにコーディングしたのですが最初の第1行しかまともな動作をしません(^^;)。
//行頭からキャレット位置まで削除
 with Editor1 do
 begin
  n := Col;         //削除数
  i := ColToChar(Row,Col); //キャレット位置
  SelStart := i-n;  //ここでColの値が意図しないものになる
  SelLength := n;
  SelText := '';
 end;

 SelStart を以前書いた
  n := RowToLines(Row);
  for i := 0 to n-1 do
   Temp.Add(Lines[i]); //TStringList
  SelStart := Length(Temp.Text); //行頭

とすれ少なくとも改行コードの次の第1行だけはまともに動きます。どこがおかしいのでしょ?





2046 Re^2: 現在のキャレット位置を先頭からのバイト数で表す コメント数:  0件
  ゆうきひろ  | 2002/02/10 (日) 10:39
 http://homepage2.nifty.com/ultla7/mozart/_start.htm
> ColToCharメソッドでLines上での文字インデックスが返ってくるので、これでど
> うでしょうか?
 おお、こんなメソッドがあったんですね。ありがとうございました。



2045 Re^2: TOleddEditorをMDIアプリで使うとキャレットがでてこない コメント数:  0件
  Km  | 2002/02/09 (土) 20:33
> で、hOleddEditor.pas で SetFocus となっているところを
> Windows.SetFocus(Handle); として見て下さい。

ありがとうございます。ばっちり上手くいきました。



2044 Re: 現在のキャレット位置を先頭からのバイト数で表す コメント数:  4件
  Km  | 2002/02/09 (土) 20:19
>  WordWrap が True の状態で現在のキャレット位置を先頭からのバイト数で表す方法があるでしょうか。
>  行頭からキャレット位置の前までを削除、あるいはキャレット位置から行末まで削除というような用途に使いたいのです。

ColToCharメソッドでLines上での文字インデックスが返ってくるので、これでどうでしょうか?



2043 Re: TOleddEditorをMDIアプリで使うとキャレットがでてこない コメント数:  1件
  本田勝彦   |  2002/02/09 (土) 19:32
> なぜカレントの子ウィンドウだけだめなのか良くわかりません。

すんませんね。MDI のことを忘れていました。以下は nifty/FDELPHI/MES/10/6449
のツリーからの引用です

>つまり、TWinControl.SetFocus メソッドでは、fsMDIForm の
>ActiveControl から、ActiveMDIChild フォームの
>ActiveControl へのフォーカス移動が出来ない

という Delphi VCL (Windows のかな)仕様があります。

で、hOleddEditor.pas で SetFocus となっているところを
Windows.SetFocus(Handle); として見て下さい。




2042 現在のキャレット位置を先頭からのバイト数で表す コメント数:  5件
  ゆうきひろ  | 2002/02/09 (土) 17:21
 http://homepage2.nifty.com/ultla7/mozart/_start.htm
 WordWrap が True の状態で現在のキャレット位置を先頭からのバイト数で表す方法があるでしょうか。
 行頭からキャレット位置の前までを削除、あるいはキャレット位置から行末まで削除というような用途に使いたいのです。

var
 n,L,i: Integer;
 S: string;
 Temp: TStringList;
begin
 Temp := TStringList.Create;
 with Editor1 do
 begin
  n := RowToLines(Row);
  for i := 0 to n-1 do
   Temp.Add(Editor1.Lines[i]);
  L := Length(Temp.Text)+Col; // 折り返された2行目以降はColではまずい
 end;
 Temp.Free;
end;

p.s
 Ctrl+M      キャレット位置に改行コードを挿入
 Ctrl+Shift+M   キャレットのある文字列の行頭に改行コードを挿入
 デフォルトではこうなってるんですねえ。キーカスタマイズのコードを書いていてはじめて気づきました(^^;)。



2041 Re^4: はじめまして。よろしくお願いします。 コメント数:  0件
  たま  | 2002/02/09 (土) 10:41
 http://www.tcnweb.ne.jp/~tamaki/
たまです。ご報告です。

> 80メガ強のファイルですよね。長〜い、且つ、あたたか〜い目で我慢していると
> そのウチ蘇るような気もします。

おっしゃるとおりでした。1時間くらいほっぽっておいて戻ってきたら、ちゃんと開いていました。スクロールしたらまた固まってましたが......
「応答なし」ですが、これは「ビジー」ということのようです。
ありがとうございました。



2040 TOleddEditorをMDIアプリで使うとキャレットがでてこない コメント数:  2件
  Km  | 2002/02/09 (土) 10:37
こんにちは、今日は質問に着ました。
TOleddEditorをMDIアプリで使ってみようとして、子ウィンドウにTOleddEditorを貼り付けただけの単純なアプリをDelphi4で作ってみました。
複数の子ウィンドウを開いて、ワードパッドからテキストをドロップしようとすると、カレントの子ウィンドウだけキャレットがでてきません。それ以外の子ウィンドウにはちゃんとキャレットがでて追従してくれます。
なぜカレントの子ウィンドウだけだめなのか良くわかりません。
原因はわからなくても対処方法だけでも良いので誰か情報ありませんか?



2039 Re: 三笠に出現 コメント数:  0件
  本田勝彦   |  2002/02/08 (金) 23:24
> 留萌より南下して三笠に出現!

今度はウチにも寄って行って下さい。お茶くらい出ますよ。
三笠に引っ越しされた?




2038 Re^3: はじめまして。よろしくお願いします。 コメント数:  1件
  本田勝彦   |  2002/02/08 (金) 23:22
> 「応答なし」となったPCは、PentiumIII 600MHz、メモリ 128MB でした。他のアプリはすべて閉じてから開きました。やはりメモリ不足なのでしょうか。もう少し積んでみたときに試してみようとおもいます。

立派なマシンぢゃないですか。

80メガ強のファイルですよね。長〜い、且つ、あたたか〜い目で我慢していると
そのウチ蘇るような気もします。

怪しい制御コードが含まれている場合はパーサーがハングする場合もありますので、
30分以上経過してもダンマリの場合はそちらを疑って見る必要があるかもしれません。

30分に根拠はありません。



2037 三笠に出現 コメント数:  1件
  alone55  | 2002/02/08 (金) 22:28
留萌より南下して三笠に出現!
岩見沢のバスターミナルはきれいですね。(駅がないからよけいそう思う)
アナウンスの声が結構気に入りました。
(他の方々のまじめな話とは全然違いました)
したっけ!
通りすがりのSEでした。



2036 Re^2: はじめまして。よろしくお願いします。 コメント数:  2件
  たま  | 2002/02/08 (金) 21:48
 http://www.tcnweb.ne.jp/~tamaki/
たまです。本田さん、お返事ありがとうございます。

> マシンの環境はどんなんでしょう。

「応答なし」となったPCは、PentiumIII 600MHz、メモリ 128MB でした。他のアプリはすべて閉じてから開きました。やはりメモリ不足なのでしょうか。もう少し積んでみたときに試してみようとおもいます。



2035 Re: はじめまして。よろしくお願いします。 コメント数:  3件
  本田勝彦  |  2002/02/08 (金) 00:57
ようこそいらっしゃいまし。

> ところで、TEditorの編集制限(最大編集サイズ)というのはあるのでしょうか。先日、300桁×約24万行(84MB)のテキストデータを読み込んだら応答不能になりました。

マシンの環境はどんなんでしょう。ウチの Celeron 566, 512M メモリで
FDELPHI MES 06 のログ(24メガ程度)を読み込ませると、30秒程かかります。
当然その間ダンマリになります。



2034 Re^2: 「@」を含んだURL コメント数:  0件
  たけ(tk)   | 2002/02/08 (金) 00:12
> これは、デフォの TEditor システムの仕様です。ヘルプの UrlChars のトピックにも記述がありますが、heUtils.pas で宣言されているグローバル変数 UrlChars を
> メインフォームの OnShow イベントハンドラなどで更新して下さい。

うまくいきました。Apollo だもんで、CharSetToStr もつかわせてもらいました。




2033 はじめまして。よろしくお願いします。 コメント数:  4件
  たま  | 2002/02/07 (木) 12:52
 http://www.tcnweb.ne.jp/~tamaki/
はじめまして。たまと申します。
D6personalで先日入門しました。Excelのマクロをすこしやる程度なので、プログラミング自体が入門です。TEditorをわくわくしながら試用させて頂いています。
申し訳ありませんが、今月半ばごろには振込みさせて頂きますので、お待ち頂けますでしょうか。よろしくお願い致します。
ところで、TEditorの編集制限(最大編集サイズ)というのはあるのでしょうか。先日、300桁×約24万行(84MB)のテキストデータを読み込んだら応答不能になりました。
これからお世話になりますが、なにとぞよろしくお願い申し上げます。



2032 Re^2: 選択領域のFont styleの変換 コメント数:  0件
  柳生  | 2002/02/07 (木) 09:52
 http://www.netforce.co.jp/

柳生です。いつもお手数をおかけします。
> 無いんです。OnDrawLine イベントハンドラでフォントスタイルを指定して描くか、
> デフォでそういう動作を望まれるのであれば、DoDrawLine を override した拡張
> コンポをこしらえて下さい。

ありがとうございます。上記方法で確認します。



2031 Re: 「@」を含んだURL コメント数:  1件
  本田勝彦  |  2002/02/07 (木) 02:24
> HEditor が最新版でない可能性があるのですが・・
>
> 「http://www.freeml.com/message/ap-list@freeml.com/0002511
> -------------------------------------
>
> というURLで下線部分しかURLとして認識しないようです。最新版ではOKでしょうか?。

これは、デフォの TEditor システムの仕様です。ヘルプの UrlChars のトピックにも記述がありますが、heUtils.pas で宣言されているグローバル変数 UrlChars を
メインフォームの OnShow イベントハンドラなどで更新して下さい。

uses
 heUtils;

procedure TForm1.FormShow(Sender: TObject);
begin
 UrlChars := UrlChars + ['@'];
end;

とすることで、@ を toUrl トークンに取り込むようになると思います。




2030 Re: 選択領域のFont styleの変換 コメント数:  1件
  本田勝彦  |  2002/02/07 (木) 02:13
> これ以外方法はないでしょうか。

無いんです。OnDrawLine イベントハンドラでフォントスタイルを指定して描くか、
デフォでそういう動作を望まれるのであれば、DoDrawLine を override した拡張
コンポをこしらえて下さい。



2029 「@」を含んだURL コメント数:  2件
  たけ(tk)   | 2002/02/06 (水) 18:57
HEditor が最新版でない可能性があるのですが・・

http://www.freeml.com/message/ap-list@freeml.com/0002511
-------------------------------------

というURLで下線部分しかURLとして認識しないようです。最新版ではOKでしょうか?。



2028 Re^2: コンストラクタとDLL化について相談 コメント数:  0件
  風晶  | 2002/02/06 (水) 04:34
本田勝彦さん、風晶です。
ご教示どうもありがとうございました。
> constructor TMyEditor.Create(hwnd_parent: HWND);
> begin
>  inherited Create(nil);
>  Parent := hwnd_parent;
> end;
フレームワークが仕上がったら、早速試してみたいと思います。
MDIウインドウの子ウインドウに含めるつもりです。
ありがとうございました。
fenjin@nifty.com



2027 選択領域のFont styleの変換 コメント数:  2件
  柳生  | 2002/02/05 (火) 11:05
 http://www.netforce.co.jp/
柳生です。
質問ばかりで申し訳ありません。

TEditorのマニュアル(Domo TEditor)に「選択領域の背景色・文字色を指定出来ます。」とありますが、選択領域のFont styleの変換マウスでドラッグした領域だけを、イタリックなどのFont styleに変換するようなメソッドはないでしょうか。

「現在の仕様では、TEditorParser が分解した語句が予約語リスト内にあるかどうか、という判別方法を採っていますので、異なる種類の語句が混在する予約語は認識されません。」ということで予約語リストに登録しても目的は達成されません。

そこでCanvasを使いTFontStyles() << fsItalicでフォント設定を行い、DrawTextRectで領域を描画するようにしたところ、マウスドラッグした部分だけがイタリックになりました。

これ以外方法はないでしょうか。



2026 Re^3: TOleddEditorでファイルDDやめるには コメント数:  0件
  百舌鳥  | 2002/02/03 (日) 22:25
 http://homepage2.nifty.com/mozu/
本田さん、Kmさん、ありがとうございます。
自分のアプリのファイルじゃなくて、hOleddEditor.pasの方を修正すると、うまく行きました。
これからも、よろしく、おねがいします。m(_ _)M



2025 Re: TOleddEditorをBCB5で使うには コメント数:  0件
  Km   | 2002/02/03 (日) 16:37
今まで気づかなかったのですが、TextのOLE Drag and Dropをするだけなら、hOleddEditorをフォームに貼り付けて、OleddEditor1.Caret.SelDragModeを
dmManualにするだけでよかったのですね。



2024 Re^2: TOleddEditorでファイルDDやめるには コメント数:  1件
  Km   | 2002/02/03 (日) 16:25
> > FDropTarget.FormatList.Add(FilesFormatEtc);
> >
> > の一行でファイルを受け入れるように設定しているようだから、ここをコメントアウトすれば良いんではないかと考えたんですが、他になにが必要でしょうか。
>
> OLE Drag オブジェクトがやってきた時に自分が扱うべきブツかどうかの判別を行うためのリストとして FormatList が用意されていますので、それだけで良いハズです。

百舌鳥さんはサンプルのUnit1.pasの方を修正したのだと思います。
hOleddEditor.pasの方を修正してみてください。>百舌鳥さん



2023 Re^5: MaxLineCharacter について コメント数:  0件
  本田勝彦  |  2002/02/02 (土) 22:42
> まあ、処理の複雑さは全然変わらないんですが。(^^;
>
> で、あんまり無理も言えないのでこっちで作ってみました。心配だ
> った速度もほとんど遅くならず、それどころが1行の文字数が長い
> ときには逆に速くなっています。
>
> ソースの方はのちほどメールで送らせてもらいます。

あら、スミマセンね。過去に描画ルーチン見直しのヒントも頂いてますし、参考にさせていただきます。



2022 Re: TOleddEditorでファイルDDやめるには コメント数:  2件
  本田勝彦  |  2002/02/02 (土) 22:40
> FDropTarget.FormatList.Add(FilesFormatEtc);
>
> の一行でファイルを受け入れるように設定しているようだから、ここをコメントアウトすれば良いんではないかと考えたんですが、他になにが必要でしょうか。

OLE Drag オブジェクトがやってきた時に自分が扱うべきブツかどうかの判別を行うためのリストとして FormatList が用意されていますので、それだけで良いハズです。



2021 Re: コンストラクタとDLL化について相談 コメント数:  1件
  本田勝彦  |  2002/02/02 (土) 22:37
VCL の TWinControl には、所有者である Owner と、Windows のお作法に従った親ウィンドゥとして Parent があてがわれますが、Owner には nil を指定しても構いません。この場合、親ウィンドゥが破棄される時や、プログラムが終了する時などに 該当 TEditor を破棄する責任がプログラマに課せられます。

> HWND型の非VCLウインドウを親とするように改良できるかどうか、相談したいです。

constructor TMyEditor.Create(hwnd_parent: HWND);
begin
 inherited Create(nil);
 Parent := hwnd_parent;
end;

というようなコンストラクタを書いて利用すれば良いように思います。
Delphi, C++Builder の IDE でフォームに貼り付けたりは出来なくなりますが。



2020 Re^4: MaxLineCharacter について コメント数:  1件
  DR-X   | 2002/02/02 (土) 16:12
>やって見るとわかると思いますが、タブを展開した文字列を取得して、今度は
>設定された文字数に分断する処理が必要になりますよね?そこが全角1バイト目
>かどうかの判別も必要になるので、結局 WordWrap と同じ様な処理が必要に
>なると思います。

たしかに割と複雑な処理が必要になると思います。それにふたつに
分けた境界線あたりが表示されているときは、2回描画しないとい
けないのでちらつきも気になるかもしれませんね。

そこで次に考えたのが、表示する必要がある文字だけをExtTextOut
に渡すというものです。この方法だと1画面のなかの文字数が多い
と問題が起こる可能性がありますが、さすがに1000文字を越えるこ
とはないでしょう。

まあ、処理の複雑さは全然変わらないんですが。(^^;

で、あんまり無理も言えないのでこっちで作ってみました。心配だ
った速度もほとんど遅くならず、それどころが1行の文字数が長い
ときには逆に速くなっています。

ソースの方はのちほどメールで送らせてもらいます。

ではでは。



2019 TOleddEditorでファイルDDやめるには コメント数:  3件
  百舌鳥  | 2002/02/01 (金) 23:41
 http://homepage2.nifty.com/mozu/
はじめまして、百舌鳥と申します。hOleddEditorを使ってみようと思うですが、テキストのD&Dは受け付けるが、ファイル自体は受け付けないようにしようと考えてます。それでサンプルを見て、やってみたところ、テキストのD&D自体はうまくいくようになったんですが、ファイルをドラッグした場合も、マウスポインタが受け入れ可能状態に変わるので困っています。サンプルを見て、InitOledd 手続きで

FDropTarget.FormatList.Add(FilesFormatEtc);

の一行でファイルを受け入れるように設定しているようだから、ここをコメントアウトすれば良いんではないかと考えたんですが、他になにが必要でしょうか。



2018 コンストラクタとDLL化について相談 コメント数:  2件
  風晶  | 2002/02/01 (金) 14:49
 http://homepage2.nifty.com/ssfu/
こんにちは、風晶といいます。
TEditorをDLL化しようと目論んでいるのですが、それに関連した質問です。
TEditorのコンストラクタではTComponet AOwnerのみを引数としているようですが、
HWND型の非VCLウインドウを親とするように改良できるかどうか、相談したいです。
あるいはすでにDLL化に成功された方おりましたらご教授頂きたいのですが。
具体的には、
TEditor1 = new TEditor(HWND hwnd_parent);
みたように使えるようにしたいです。



2017 Re^3: [要望]タブの文字数について コメント数:  0件
  本田勝彦  |  2002/01/31 (木) 22:14
> とりあえず、自己責任で改造して使おうと思いますが、次のTEditor
> では、判定の部分をはずせませんか。でもってヘルプには 2、4、6、8
> しか保証しないと書いておくと・・・
>
> privateなんで継承だけでは改造できないんですよね。
> よろしくお願いします。

プロパティのアクセスメソッドは極力 private にするという主義なのでご要望には残念ながらお応え出来ません。
2行をコメントアウトするだけなので、ご自身でソースコード書き換えを行って下さい。



2016 Re^3: MaxLineCharacter について コメント数:  2件
  本田勝彦  |  2002/01/31 (木) 22:11
> うーん、そんなこといわずに(^^; 速度の問題は、ポインタでう
> まく回してやれば、気にならないと思いますけど。
>
> ExtTextOutの配列を固定にしておけば、プロパティで一行の文字
> 数(スクロール幅)も変えられるようにもできて便利じゃないで
> しょうか。

やって見るとわかると思いますが、タブを展開した文字列を取得して、今度は
設定された文字数に分断する処理が必要になりますよね?そこが全角1バイト目
かどうかの判別も必要になるので、結局 WordWrap と同じ様な処理が必要に
なると思います。

いやぢゃ(^^;



2015 Re^11: FormViewEditorをC++Builderで表示する方法 コメント数:  0件
  本田勝彦  |  2002/01/31 (木) 22:08
> でもBCBネタにはツッコミ入れていこうと思いますのでよろしくです。

それは心強いですね。よろしくお願いします。




2014 Re^11: FormViewEditorをC++Builderで表示する方法 コメント数:  0件
  柳生  | 2002/01/31 (木) 15:59
 http://www.netforce.co.jp/
柳生です。
FUUさんどうもありがとうございました。
完全に動作するようになりました。
半ばあきらめて自分でダイアログを作ろうとしていました。(BracketsとFontの設定画面は作りました)
それにしても、TEditorはすばらしいですね。

> FUUです。
> TEditorを含むパッケージと、vcl50;vclx50;vclsmp50を使うようにします。
> 前の発言にも書いたように、スタティックリンクはできません。
>  EditEditor関数を使いたい場合は、
> #include <HViewEdt.hpp>
>  とすれば使えるはずです。
>  配置するコンポーネントはTEditorだけでOKでしたよ。



2013 Re^2: [要望]タブの文字数について コメント数:  1件
  DR-X   | 2002/01/31 (木) 10:17
>2..8 の間であることを前提にしている部分がかなりあったような
>気がします。WrapByte < TabSpaceCount の時破綻すると思いますが。

たしかに、WrapByte < TabSpaceCount のときは編集できないですね。
しかし、試してみた感じでは、暴走することもなく使用できるみたい
です。

とりあえず、自己責任で改造して使おうと思いますが、次のTEditor
では、判定の部分をはずせませんか。でもってヘルプには 2、4、6、8
しか保証しないと書いておくと・・・

privateなんで継承だけでは改造できないんですよね。
よろしくお願いします。



2012 Re^2: MaxLineCharacter について コメント数:  3件
  DR-X   | 2002/01/31 (木) 09:48
>これは知りませんでした。情報ありがとうございます。

DelphiについてくるAPIヘルプには書いてないんですが、MSDNで
調べるとしっかり書いてます。マイクロソフトのホームページ
でWeb上から調べることもできますよ。

>う゛〜む・・・・・・いやぢゃ(^^;

うーん、そんなこといわずに(^^; 速度の問題は、ポインタでう
まく回してやれば、気にならないと思いますけど。

ExtTextOutの配列を固定にしておけば、プロパティで一行の文字
数(スクロール幅)も変えられるようにもできて便利じゃないで
しょうか。

よろしくお願いします。



2011 Re^2: selstartで質問なんですが コメント数:  0件
  かるむ  | 2002/01/31 (木) 02:59
A・・様、ありがとうございました。
無事、希望どうりの動作になりました。
感謝です。



2010 Re^10: FormViewEditorをC++Builderで表示する方法 コメント数:  1件
  FUU   | 2002/01/31 (木) 02:04
 http://homepage1.nifty.com/fuu/
本田さん、Kmさん、お久しぶりです(^^)

>折を見て、ここで TEditor & C++Builder ネタを展開してくださいまし。

ううむ、今のところTEditorを使う機会が無くて申し訳ない(^^ゞ
でもBCBネタにはツッコミ入れていこうと思いますのでよろしくです。



2009 Re^10: FormViewEditorをC++Builderで表示する方法 コメント数:  1件
  FUU   | 2002/01/31 (木) 02:04
 http://homepage1.nifty.com/fuu/
FUUです。

>HViewEdt.pasをプロジェクトに追加したとき、
>クラスTSpinEditが見つかりません。エラーを無視して続けますか?
>がでるので、全て無視を選択しております。また、コンパイル時の

 HViewEdt.pasを、アプリケーション側のプロジェクトに含めてしまっているの
でしょうか?
 そうではなくて、アプリケーション側は実行時パッケージを使用する設定にして、
TEditorを含むパッケージと、vcl50;vclx50;vclsmp50を使うようにします。
前の発言にも書いたように、スタティックリンクはできません。

 TEditorのパッケージをビルドしたときに、*.hppファイルが自動作成されます
ので、これらを適当なフォルダに入れておき、インクルードパスを通してください。
 EditEditor関数を使いたい場合は、
#include <HViewEdt.hpp>
 とすれば使えるはずです。
 配置するコンポーネントはTEditorだけでOKでしたよ。



2008 Re: [要望]タブの文字数について コメント数:  2件
  本田勝彦  |  2002/01/31 (木) 01:20
> タブの文字数なんですが、現在は2、4、6、8しか設定できないです
> よね。これを自由に1〜64ぐらいまで設定できるようになりませんか。

2..8 の間であることを前提にしている部分がかなりあったような気がします。
WrapByte < TabSpaceCount の時破綻すると思いますが。
WordWrap = False の時だけ可能な仕様とする?嫌っしょ(^^;

> よろしくお願いします。

いやぢゃいやぢゃ(^^;;;;



2007 Re: MaxLineCharacter について コメント数:  4件
  本田勝彦  |  2002/01/31 (木) 01:17
> また、Win95/98ではExtTextOutは8192文字の制限があるそうなので
> 今の仕様ではそれ以上長い行は表示できません。

これは知りませんでした。情報ありがとうございます。

> そこで長い行を処理するときは例えば200文字ずつExtTextOutに渡し
> てやるとかっていうのはどうでしょうか。そうすれば大きな配列を
> 作らなくて済みますし。
>
> ご検討お願いします。

う゛〜む・・・・・・いやぢゃ(^^;



2006 Re: TOleddEditorをBCB5で使うには コメント数:  0件
  本田勝彦  |  2002/01/31 (木) 01:15
Km さん、いつもどもです。
C++Builder を飼ってない&ワカラナイ私には有り難いことです。
TOleddEditor の web ページドキュメントを更新させて頂きますね。



2005 Re^9: FormViewEditorをC++Builderで表示する方法 コメント数:  2件
  本田勝彦  |  2002/01/31 (木) 01:10
FUUさん、Km さん情報ありがとうございます。
早速Q&Aに使わせて頂きますね。

FUUさんは、ようこそいらっしゃいまし。かな?(^^;
お久ですね。お元気そうで何よりです。FBORLUSR でのご活躍拝見しております。

折を見て、ここで TEditor & C++Builder ネタを展開してくださいまし。
よろしくね。



2004 Re: selstartで質問なんですが コメント数:  1件
  A・・  | 2002/01/29 (火) 19:50
こんばんは

現在画面に表示されている・・ という意味であれば
↓でよろしいかと思います、どうでしょう?
var
 ScrRow : Integer;
begin
 ScrRow := SendMessage(Editor1.Handle, EM_GETFIRSTVISIBLELINE, 0, 0 );
 Editor1.SetRowCol(ScrRow, 0);
 Editor1.SelLength := 6;
 edit1.text := Editor1.SelText;
end;



2003 selstartで質問なんですが コメント数:  2件
  かるむ  | 2002/01/29 (火) 16:44
こんばんはです。

1つ教えて頂きたいことがあるのですがTeditorで
画面の1番左上の3文字をEditBoxに入れたいのですが

procedure TForm1.Button18Click(Sender: TObject);
begin
Editor1.SelStart := ???;
Editor1.SelLength := 6;
edit4.text := Editor1.SelText;
end;

???の部分の値の得方が判りません
ご指導いただけないでしょうか?



2002 Re^9: FormViewEditorをC++Builderで表示する方法 コメント数:  2件
  柳生  | 2002/01/29 (火) 11:35
 http://www.netforce.co.jp/
FUUさん、Kmさんありがとうございます。
>
FUUさんのSpin.hをコピーして、Spin.hppを作成する方法で、FormViewEditorの画面は全て正常に表示できました。
しかし、CANCEL、HELPボタンは有効ですが、OKを押すと
procedure TFormViewEditor.Button_OkClick(Sender: TObject);の
FEditorProp.Assign(EditorProp1);でアクセスバイオレーション
となってしまいました。

そこでFEditorPropが存在しないからと思いFEditorPropオブジェクトをFormに貼り付けましたが状況は変わりませんでした。
何かよい方法はないでしょうか。

ただし、以下のようにコンパイル実行しています。
HViewEdt.pasをプロジェクトに追加したとき、
クラスTSpinEditが見つかりません。エラーを無視して続けますか?
がでるので、全て無視を選択しております。また、コンパイル時のFormViewEditor->SpinEdit_CaretVerticalAcに対するコンポーネントがありません。なども全て無視してコンパイルしています。



2001 Re^2: Teditorに組み込まれている機能を使うには コメント数:  0件
  けい  | 2002/01/27 (日) 11:50
本田さん、ありがとうございます。
うまくいきました。

> 現在この仕組みを考え中なのですが、実装はまだだいぶ先になり
そうです。

そうですか。全てのTEditorの機能が簡単に使えると私のような素人
プログラマには大変助かります。是非とも実装してくれると嬉しく
思います。