|
Вопрос # 3 353/ вопрос открыт / |
|
Доброго времени суток, уважаемые эксперты!
Есть Edit.Text:=\sdds\cxv vcv\xcvcvcsf\cv1\
как сделать чтобы при ButtonClick удалить 'cv1\'
при следующем ButtonClick удалить 'xcvcvcsf\' итд.
оставить Edit.Text:=\
Спасибо.
 |
Вопрос задал: djemov (статус: Посетитель)
Вопрос отправлен: 2 ноября 2009, 17:41
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: Вадим К
Здравствуйте, djemov!
легко:) где то так
Edit1.text := copy(Edit1.text, 1, LastDelimiter('\', edit1.text) - 1);
 |
Ответ отправил: Вадим К (статус: Академик)
Время отправки: 2 ноября 2009, 17:52
|
Мини-форум вопроса
Всего сообщений: 4; последнее сообщение — 3 ноября 2009, 10:40; участников в обсуждении: 2.
|
djemov (статус: Посетитель), 2 ноября 2009, 18:34 [#1]:
Edit1.text := copy(Edit1.text, 1, LastDelimiter('\', edit1.text) - 1);
Удаляет всю строку с Edit.
|
|
Вадим К (статус: Академик), 2 ноября 2009, 18:45 [#2]:
это может быть в том случае, если в строке нет символа \
а что выведет строка
ShowMessage(inttostr(LastDelimiter('\', edit1.text)));
для Вашей строки.
Галочка "подтверждения прочтения" - вселенское зло.
|
|
Вадим К (статус: Академик), 2 ноября 2009, 20:00 [#3]:
Перепроверил. В ответе код работал чуточку не так как надо, вот такой код точно работает как надо и полностью выполняет поставленную задачу
procedure TForm1.Button1Click(Sender: TObject);
var s:string;
begin
s := edit1.text;
if (s[length(s)] <> '\') then exit;
delete(s,length(s), 1);
Edit1.text := copy(s, 1, LastDelimiter('\', s) - 1) + '\';
end;
Галочка "подтверждения прочтения" - вселенское зло.
|
|
djemov (статус: Посетитель), 3 ноября 2009, 10:40 [#4]:
Получилось.Спасибо!
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|