![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Промогите решить проблему [D7, WinXP]
_Гость_ © (2006-09-10 20:57:00)Привет всем! Ситуация значить такая: При вводе в Edit должно происходить следуще:
Если вводится символ " (двойные кавычки), то он заменяется на '' (две одинарные кавычки).
Помогите реализовать плиз!
_Гость_ (2006-09-11 00:18:00) [21]Спасибо, а как вернуться на конец строки?)
Loginov Dmitry (2006-09-11 00:06:00) [22]Без учета текущего выделения:
procedure TForm1.Edit1Change(Sender: TObject);
begin
Edit1.OnChange := nil;
Edit1.Text := StringReplace(Edit1.Text, '"', '''''', [rfReplaceAll]);
Edit1.OnChange := Edit1Change;
end;
Германн (2006-09-10 22:42:00) [23]
> Anatoly Podgoretsky © (10.09.06 22:28) [2]
>
> Так ведь не обязательно в конце и должно учитываться выставленное
> выделение. SelText := #39#39;
Так ведь просили только чтоб из крана не капало! А про то, что после ремонта нужно пользоваться водой ничего не говорили :-)
default (2006-09-10 22:37:00) [24]Anatoly Podgoretsky © (10.09.06 22:28) [2]
как мне напомнило это ветку про запрет ввода пробелов в едит:)
Anatoly Podgoretsky (2006-09-10 22:28:00) [25]Так ведь не обязательно в конце и должно учитываться выставленное выделение. SelText := #39#39;
Германн (2006-09-10 21:18:00) [26]
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if Key = #34 then begin
Edit1.Text:=Edit1.Text+#39#39;
Key:=#0;
end;
end;