Форум: "Основная";
Текущий архив: 2003.08.04;
Скачать: [xml.tar.bz2];
ВнизИзменение количества выделенных символов в 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;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.011 c