Форум: "Основная";
Текущий архив: 2002.11.18;
Скачать: [xml.tar.bz2];
ВнизTEdit Найти похожие ветки
← →
mba (2002-11-06 06:19) [0]Родскажите пожалуйста как мне получить управление TEdit-ом (или его потомком - ввести событие?) при попытки изменить его Text до самого изменения, т.е. до onChange.
← →
Обсолютный ноль (2002-11-06 06:39) [1]Событие OnKeyPress,OnKeyUp,OnKeyDown, тока не забудь свойство формы KeyPrewiev поставить в True
← →
mba (2002-11-06 09:32) [2]А если Text меняется Insertом?
← →
gek (2002-11-06 09:53) [3]тогда см WM_PASTE
← →
McSimm (2002-11-06 10:38) [4]насколько я знаю, нет такого события(сообщения windows) для edit.
можно попробовать такую схему - запоминать текст в глобальной переменной, анализировать OnChange и, при необходимости, возвращать предыдущее состояние.
Этот набросок не позволит пользователю добиться в Edit1 двух знаков равенства подряд:
var
Flag: Boolean;
EditText: String;
...
procedure TForm1.FormCreate(Sender: TObject);
begin
EditText := Edit1.Text;
Flag := False;
end;
...
procedure TForm1.Edit1Change(Sender: TObject);
var
S: String;
begin
if Flag then Exit;
with (Sender as TEdit) do
begin
Flag := True;
S := Text;
if Pos("==", S) > 0 then
Text := EditText
else
EditText := S;
end;
Flag := False
end;
При таком подходе возможна проблема с позицией курсора.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.11.18;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.008 c