Форум: "Основная";
Текущий архив: 2003.02.27;
Скачать: [xml.tar.bz2];
ВнизКак удалить пробелы до первого символа? Найти похожие ветки
← →
Артём К (2003-02-14 12:37) [0]Привет всем!
У меня есть Edit, в котором кочу вводить имя файла!
Очевидно, оно должно быть не пустым.
Использую if (Length(Editq.Text) <> 0) then ...
Но если мы просто введём пробел и больше ничего, то длина уже не равна нулю. А имя файла, соответственно, будет пустым (вернее пробел).
Вопрос: Как удалить все пробелы, если больше ничего нет.
Как удалить все пробелы до первого символа.
Заранее спасибо!
← →
stone (2003-02-14 12:38) [1]StringReplace
← →
Calm (2003-02-14 12:40) [2]Использовать TOpenDialog религия не позволяет?
← →
MBo (2003-02-14 12:43) [3]trim(left)
← →
Palladin (2003-02-14 12:44) [4]Trim() + F1
← →
Романов Р.В. (2003-02-14 12:45) [5]F1 - Trim function, see also
← →
Dms (2003-02-14 13:44) [6]Используй FileExists( Edit1.Text )
← →
Anatoly Podgoretsky (2003-02-14 13:47) [7]Для имени файла не имеет смыслв удалять в начале пробелы, зачем делать лишнюю работу, ради эстетики?
← →
Palladin (2003-02-14 13:56) [8]
> Anatoly Podgoretsky © (14.02.03 13:47)
А если к имени файла потом путь цепляется?
← →
mate (2003-02-14 15:35) [9]В событии onKeyPress на Edite написать
if (key=#32)and(length(Edit1.Text)=0) then
key:=chr(0);
и не мучаться с пробелами в начале ;)
← →
Романов Р.В. (2003-02-14 15:57) [10]mate © (14.02.03 15:35)
Пытливый юзер найдет кучу способов ввести в твой Edit пробелы в начале строки :)
← →
artton (2003-02-15 03:43) [11]Все до безобразия просто:
s:=Edit1.Text;
While s[1]=" " do Delete(s,1,1);
IF Length(s)=0 Then ShowMessage("Крутой не работающий адрес!");
Else //s-строка содержащая адрес, в начале не имеет пробелов, дальнейшая проверка на Вашей совести.
Все.
← →
Anatoly Podgoretsky (2003-02-15 11:19) [12]Palladin © (14.02.03 13:56)
Это уже другой вопрос, тем более, что речь шла только об совсем пустом имени. Есть пробел в начале или нет особой роли не играет (кроме случая дополнительных манипуляций с этим именем), у него по контексту выходит, что у мол него из за этого просто возникает ошибка, но так она возникнет и в других случай, не только когда пустое имя но и когда оно просто неверное.
А при этом расклае выходит, что у него неверный дизайн, надо белать обработку ошибок и я не сомневаюсь, что у него как у большинства начинающих ее просто нет, это не только интуицая или статистика, эта уверенность базируется на его предыдущих вопросах в конференции и в чате.
Конечно удаление пробелов в начале имени как правило не вредит, чего не скажешь про конечные пробелы, если к имени добавляется расширение в программе, а не пользователем
← →
Anatoly Podgoretsky (2003-02-15 11:24) [13]mate © (14.02.03 15:35)
Не надо мцчаться на этапе ввода и насиловать пользователя, такие вещи делаются по окончанию его.
artton (15.02.03 03:43)
Это точно безобразие делать такое в Дельфи 6, я бы понял если бы этот код был для ранних версий Дельфи, не было в них функции TrimLeft и даже Trim.
← →
Palladin (2003-02-15 12:03) [14]
> Anatoly Podgoretsky © (15.02.03 11:19)
Не будут спорить, ибо решать, что делать все таки автору. Черт его знает что он дальше с этим именем делает.
> artton (15.02.03 03:43)
Ай молодец, изобрел велоспед.
← →
mate (2003-02-15 12:41) [15]А для пытливого юзера можно написать в событии onChange
while Edit1.Text[1]=" " do
Edit1.Text:=Copy(Edit1.Text,2,length(Edit1.Text)-1);
и пусть юзер мучается ;)
← →
Романов Р.В. (2003-02-15 13:10) [16]
> mate
А Ctr+V
← →
mate (2003-02-15 13:18) [17]
> Романов Р.В. © (15.02.03 13:10)
>
> > mate
>
> А Ctr+V
Я что - то и не знал что при Сtr+V (но наверное Сtrl ) не наступает событие onChange , т.е. содержимое эдита значит при вставке в него из буффера вообще не меняется. 8-|
← →
Романов Р.В. (2003-02-15 13:32) [18]mate © (15.02.03 13:18)
Не с Ctr+V все нормально, но при удалении последнего символа у тебя возникнет AV.
← →
mate (2003-02-15 13:35) [19]Ну ладно уговорил, тогда
while (Edit1.Text[1]=" ")and(length(Edit.Text)>0) do
Edit1.Text:=Copy(Edit1.Text,2,length(Edit1.Text)-1);
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.02.27;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.008 c