Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 10.07.2008, 02:42   #11
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

Код:
var
  d: integer;
begin
  d := 0;
  while d <= listbox1.Count - 1 do 
    if pos('<empty>', listbox1.Items.strings[d]) <> 0 then
      listbox1.items.Delete(d) else inc(d)
end;
eoln вне форума
Старый 10.07.2008, 08:06   #12
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Как из ListBox удалить пустые строки?
Еще один альтернативный способ:
Код:
while pos(#13#10#13#10,ListBox1.Items.Text)<>0 do
 ListBox1.Items.Text:=StringReplace(ListBox1.Items.Text,#13#10#13#10,#13#10,[rfReplaceAll]);
:D :D
I'm learning to live...
Stilet вне форума
Старый 10.07.2008, 10:51   #13
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,899
Радость

В этом случае удаляются все строки имеющие в конце <empty>, пустые же строки отсаются.
var
d: integer;
begin
d:= 0;
while d <= listbox1.Count - 1 do
if pos('<empty>', listbox1.Items.strings[d]) <> 0 then
listbox1.items.Delete(d) else inc(d)
end;

А в этом случае пустые строки удаляются все кроме самой первой, которая находится поверх списка:
while pos(#13#10#13#10,ListBox1.Items.Tex t)<>0 do
ListBox1.Items.Text:=StringReplace( ListBox1.Items.Text,#13#10#13#10,#1 3#10,[rfReplaceAll]);
Shouldercannon вне форума
Старый 10.07.2008, 15:05   #14
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

Заменить это
Код:
if pos('<empty>', listbox1.Items.strings[d]) <> 0 then
на это
Код:
if (pos('<empty>', listbox1.Items.strings[d]) <> 0) 
or (listbox1.Items.strings[d] = '') then
Будут удаляться и пустые и содержащие '"<empty>"
eoln вне форума
Старый 10.07.2008, 15:32   #15
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
А в этом случае пустые строки удаляются все кроме самой первой
Ну дык первую удаляй индивидуально.
I'm learning to live...
Stilet вне форума
Старый 08.01.2010, 12:11   #16
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,899
По умолчанию

Как нужно модернизировать данный код, чтобы после пароля небыло ; (77.108.194.247;27888;empty;)?
Код:
function VarPos(var sBuffer: string; Delim: char = #13): string;
var
Poz: Integer;
begin
Poz:=Pos(Delim, sBuffer);
Result:=Copy(sBuffer, 0, Poz-1);
Delete(sBuffer, 1, Poz);
end;

procedure TForm1.LBServersMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
var
SomStr: string;
begin
if LBServers.ItemIndex < 0 then begin
Exit;
end;
SomStr:=LBServers.Items[LBServers.ItemIndex];
EIP.Text:=VarPos(SomStr, ';');
EPort.Text:=VarPos(SomStr, ';');
EPas.Text:=VarPos(SomStr, ';');
end;
Shouldercannon вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ListBox werser Помощь студентам 1 29.05.2008 22:32
[ C# ]::[ ListBox ] Fire.id Общие вопросы .NET 1 13.01.2008 21:07
из ListBox в БД Spectre БД в Delphi 5 31.12.2007 13:58
Listbox Dexic Помощь студентам 1 24.06.2007 15:05
ListBox lin Помощь студентам 1 04.06.2007 13:46