Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.08.04;
Скачать: CL | DM;

Вниз

Изменение количества выделенных символов в TEdit   Найти похожие ветки 

 
starik30   (2003-07-22 12:17) [0]

Hi, All!

Как определить, что изменилось количество выделенных символом в TEdit (что-то WM_Paint у меня не получилось -(( ...) ? Возникает ли событие WM_PAINT при вводе символов ... ?

Заранее благодарен
Юра


 
mrcat ©   (2003-07-22 12:21) [1]

OnChange ?


 
starik30   (2003-07-22 12:25) [2]

OnChange - возникает, когда текст был изменен... А мне надо когда изменилось количество выделенных символов ...


 
VAleksey ©   (2003-07-22 12:32) [3]

SelText ?


 
mrcat ©   (2003-07-22 12:32) [4]

ну тогда WM_PAINT. Используйте процедуру окна WindowProc для Edit


 
VAleksey ©   (2003-07-22 12:37) [5]

Specifies the selected portion of the edit control’s text.

property SelText: string;

Description

Read SelText to determine the value of the selected text. Set SelText to replace the selected text with a new string. If there is no selection, but the edit control has focus, set SelText to insert a new string into the text at the cursor.


 
VAleksey ©   (2003-07-22 12:38) [6]

О оо Сорри, что - то я все в оффтопик луплю.
Извиняюсь.


 
VAleksey ©   (2003-07-22 12:39) [7]

И все же если попробовать OnMouseMove + SelText в связке ?


 
mrcat ©   (2003-07-22 12:46) [8]

вот незадача-то :)

unit uMain;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics,
Controls, Forms, Dialogs, StdCtrls, ComCtrls;

const
WM_CHANGE = WM_USER + 101;

type
TfrmMain = class(TForm)
MyEdit: TEdit;
procedure FormCreate(Sender: TObject);
private
FOldEditWndProc: TWndMethod;
procedure BasicWndProc(var Message: TMessage);
procedure WMChange(var Message: TMessage); message WM_CHANGE;
end;

var
frmMain: TfrmMain;

implementation

{$R *.dfm}

procedure TfrmMain.BasicWndProc(var Message: TMessage);
begin
if Assigned(FOldEditWndProc) then FOldEditWndProc(Message);

if Message.Msg = WM_PAINT then
PostMessage(Handle, WM_CHANGE, 0, 0);
end;

procedure TfrmMain.FormCreate(Sender: TObject);
begin
FOldEditWndProc := MyEdit.WindowProc;
MyEdit.WindowProc := BasicWndProc;
end;

procedure TfrmMain.WMChange(var Message: TMessage);
begin
Caption := "Делай что тебе нравится :)";
end;

end.



 
starik30   (2003-07-22 12:49) [9]

Дело в том, что тогда надо обрабатывать и Shift + Arrow т.е. OnKeyPress и OnMouseMove - конечно можно попробовать, но может есть более прямой вариант определения Subj ?



Страницы: 1 вся ветка

Текущий архив: 2003.08.04;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.013 c
1-10192
Альф
2003-07-17 16:11
2003.08.04
Можно ли из множества целых составить строку ?


1-10162
Tolic-F
2003-07-18 19:57
2003.08.04
Как прокрутить ScrollBox на центр?


1-10220
Someone Who Need You Help
2003-07-19 21:09
2003.08.04
Автоопределение кодировки...


7-10486
Disa
2003-05-22 07:50
2003.08.04
Изменение раскладки


1-10167
Spawn
2003-07-22 19:08
2003.08.04
Word