Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Delphi - Поменять Lisbox на ListView или CheckListBox

Ответить
Настройки темы
Delphi - Поменять Lisbox на ListView или CheckListBox

Аватара для Putin-mode

Ветеран


Автор проектов


Сообщения: 648
Благодарности: 129

Профиль | Отправить PM | Цитировать


Добрый день!

Есть программа, в ней выводится список файлов конкретной папки в Listbox а потом происходит перемещение этих файлов в другую папку.

Минус в том что нет выбора какие именно файлы из списка нужно переместить и они перемещаются все.

Вот моя функция перемещения

Код: Выделить весь код
procedure TForm1.Button4Click(Sender: TObject);

begin
  while ListBox1.Items.Count > 0 do
  begin
    if Movedir(PAnsiChar(listbox1.Items[listbox1.ItemIndex]), PAnsiChar(Edit2.Text)) then

      ListBox1.Items.Delete(i2)

    else
    begin
      ShowMessage('Объект не перемещен');

      Break;
    end;
  end;

  ShowMessage('Объекты перемещены');
end;
Подскажите как переделать с листбокса на листвив?

Нужно чтоб пользователь ставил чеки на против нужных файлов и уже запускал перемещение файлов.

Или доработать эту процедуру

Код: Выделить весь код
with CheckListBox1 do 
 for i:=0 to Count-1 do if checked[i] then 
  Movedir(PAnsiChar(Items[ItemIndex]), PAnsiChar(Edit2.Text))


так чтоб перемещались отмеченые файлы, и строчки которые относятся к перемещенным файлам тоже удалялись.

Спасибо!

-------

Ушел в изучение Delphi(7) и PHP надеюсь пригодится!!!
Федеральная Служба Охраны - Рыбинск
Не забываем отмечать полезные сообщения если я вам помог!
Вышла новая версия программы? сообщите! Обновлю аддон!
Мои аддоны:Teleport/Vopt/ESET SysInspector/AutoHotKey/FCleaner/Advanced SystemCare/Vba32 AntiRootkit/Я фото/Я онлайн/SO Utilities Free


Отправлено: 17:41, 17-07-2012

 

Аватара для opel431

Ветеран


Contributor


Сообщения: 1803
Благодарности: 714

Профиль | Отправить PM | Цитировать


Привет дружище!
1. Нужен ли тебе для этой задачи ListView?
2. Замени ListBox на CheckListBox и все проблемы.

Не нужно все лопатить заново! Просто замени предка.
Выдели ListBox на форме, далее Ctrl+X - Вырезали.
Перейди в модуль (*.PAS) установи курсор ниже end. скопируй вырезанный объект Ctrl+C

читать дальше »

end.

object ListBox1: TListBox
Left = 144
Top = 104
Width = 121
Height = 97
ItemHeight = 13
TabOrder = 0
end


измени object ListBox1: TListBox на object ListBox1: TCheckListBox, вырежи измененный блок Ctrl+X, снова открой форму, клик на форме и Ctrl+V. Все, далее копируй и убирай элементы в цикле с нужным условием.

-------
Хвала тому, кто встав среди камней, уча другого, сам будет умней.


Последний раз редактировалось opel431, 18-07-2012 в 03:26.

Это сообщение посчитали полезным следующие участники:

Отправлено: 02:52, 18-07-2012 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Аватара для Putin-mode

Ветеран


Автор проектов


Сообщения: 648
Благодарности: 129

Профиль | Отправить PM | Цитировать


opel431, Спасио, попробую!

-------

Ушел в изучение Delphi(7) и PHP надеюсь пригодится!!!
Федеральная Служба Охраны - Рыбинск
Не забываем отмечать полезные сообщения если я вам помог!
Вышла новая версия программы? сообщите! Обновлю аддон!
Мои аддоны:Teleport/Vopt/ESET SysInspector/AutoHotKey/FCleaner/Advanced SystemCare/Vba32 AntiRootkit/Я фото/Я онлайн/SO Utilities Free


Отправлено: 10:53, 18-07-2012 | #3


Новый участник


Сообщения: 40
Благодарности: 19

Профиль | Отправить PM | Цитировать


А можно вообще ничего не менять: достаточно выставить в ListBox Multiselect в True и - вуаля.
А пробегаться по отмеченным пунктам при помощи свойства Selected элемента.
Это сообщение посчитали полезным следующие участники:

Отправлено: 12:24, 18-07-2012 | #4


Аватара для Putin-mode

Ветеран


Автор проектов


Сообщения: 648
Благодарности: 129

Профиль | Отправить PM | Цитировать


AlexVol, пробЫвал, изначально так и было, но что то я там недопонял на счет как пробегаться и сделал перемещение вообще всего списка.

-------

Ушел в изучение Delphi(7) и PHP надеюсь пригодится!!!
Федеральная Служба Охраны - Рыбинск
Не забываем отмечать полезные сообщения если я вам помог!
Вышла новая версия программы? сообщите! Обновлю аддон!
Мои аддоны:Teleport/Vopt/ESET SysInspector/AutoHotKey/FCleaner/Advanced SystemCare/Vba32 AntiRootkit/Я фото/Я онлайн/SO Utilities Free


Отправлено: 12:33, 18-07-2012 | #5


Новый участник


Сообщения: 40
Благодарности: 19

Профиль | Отправить PM | Цитировать


У отмеченного пункта свойство Selected выставлено в True. Соответственно,когда бежим по списку проверяем свойство и либо пропускаем, либо копируем.
Не забываем при успешном копировании снимать в False

Отправлено: 12:19, 19-07-2012 | #6



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Delphi - Поменять Lisbox на ListView или CheckListBox

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
PowerShell - [решено] как поменять поменять тип группы ejik_off Скриптовые языки администрирования Windows 5 23-11-2011 13:49
CMD/BAT - [решено] Как создать ярлык и поменять его иконку или поменять иконку уже существующего ярлыка Centrinar Скриптовые языки администрирования Windows 6 04-09-2011 10:56
Delphi - Прокрутка в ListView напарНИК Программирование и базы данных 0 24-01-2011 19:34
Разное - ListView в VB6 Synthetyic_Man Программирование и базы данных 1 11-05-2010 05:52
Установка - как поменять версию виндовс поменять с 2002 на 2007 в "свойства системы" visokosnik Microsoft Windows 2000/XP 3 25-08-2007 19:18




 
Переход