Watch, Follow, &
Connect with Us

For forums, blogs and more please visit our
Developer Tools Community.


Welcome, Guest
Guest Settings
Help

Thread: RichEdit1で何行目がクリックされたかを検知するには?


This question is answered. Helpful answers available: 2. Correct answers available: 1.


Permlink Replies: 1 - Last Post: Jul 14, 2016 2:18 PM Last Post By: osamu nagao
osamu nagao

Posts: 97
Registered: 3/22/04
RichEdit1で何行目がクリックされたかを検知するには?  
Click to report abuse...   Click to reply to this thread Reply
  Posted: Jul 6, 2016 2:30 AM
nagaoです。いつも教えて頂きありがとうございます。

Windows 7 32bit + Dephi 2010 32bit Pro では、下記のテストプログラムで、何行目がクリックされたか検知できます。
しかし、Windows 10 64bit + Delphi 10.1 Berlin 32bit Proでは下記のテストプログラムをコンパイルした段階で
「[dcc32 エラー] Unit1.pas(32): E1012 定数式が範囲を越えました。」
のエラーがでます。
対策をお教えねがいます。

***************************テストプログラム***********************************************
procedure TForm1.RichEdit1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
k:integer;
begin
k:=RichEdit1.Perform(EM_LINEFROMCHAR,-1,0);
ShowMessage('k='+inttostr(k));
end;
osamu nagao

Posts: 97
Registered: 3/22/04
Re: RichEdit1で何行目がクリックされたかを検知するには?  
Click to report abuse...   Click to reply to this thread Reply
  Posted: Jul 6, 2016 5:49 PM   in response to: osamu nagao in response to: osamu nagao
自己レスです。

k:=RichEdit1.Perform(EM_LINEFROMCHAR,-1,0);
この機能がなくても、私のアプリは動作することを確認しましたので、質問を
取り消します。

     ↓

発言修正です。私の別のアプリでこの機能がやはり必要であることが判明しました。
私はembarcaderoのアップデートサブスクリプションを購入済みでしたので、そのテクニカルサポートを受けました。
その結果、
ShowMessage('Current line : '+ IntToStr(RichEdit1.ActiveLineNo);
で、RichEdit1の何行目がクリックされているかを検知できることを知りました。

Edited by: osamu nagao on Jul 14, 2016 2:15 PM
Legend
Helpful Answer (5 pts)
Correct Answer (10 pts)

Server Response from: ETNAJIVE02