• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Удаление последнего символа

  • Автор темы Автор темы misterio
  • Дата начала Дата начала
M

misterio

Задача :

Есть поле которое допускает только ввод символа Х. Если пользователь вводит другой символ, то он должен быть удален.

Вот я написал так, но почему-то не работает? Что- то не так? Может есть альтернативные способы отключения ввода всех клавиш кроме определенных?

Станартная процедура KeyPress

procedure TForm2.Edit1KeyPress(Sender: TObject; var Key: Char);
var
GetStr : string;
begin

if (Key <> 'x') then
begin
MessageDlg('Символ недопустим!!', mtError, [mbOK],0);
GetStr := Edit1.Text;
Delete (GetStr, Length(GetStr)-1 ,1 );
Edit1.Text := GetStr;
end;
end;

Вместо этого оно заменяет первый символ на введенный из клавы.
 

Кому? Вы можете писать словами, а не мысленно посылать сообщения? :)

А и еще оно фокус на начало строки кидает....как это можно в конец перекинуть?
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab