|
0 / 0 / 0
Регистрация: 08.11.2015
Сообщений: 65
|
|
ListBox. Удаление объекта со сдвигом индексов всех элементов массива и самих строчек16.01.2016, 17:05. Показов 1451. Ответов 5
Метки нет (Все метки)
Доброго времени суток. Спасибо всем, кто откликается на мои "не умные вопросы" =) Ибо понять меня иногда бывает тяжело - знаю.
Поясню всю суть... У меня есть листбокс. При создании нового элемента в ListBox в мой массив данных загружается полно разных данных об этом выбранном элементе листбокса. Данные можно менять. Там есть и текст и целые числа и буулы. И т.д. Есть (пока еще без кода) кнопка удалить... Мне нужно. Чтобы при нажатии на кнопку "Удалить". Выделенная строчка по своему индексу удалялась. Например я удаляю строчку с индексом (1). И все строчки ниже поднялись на строчку вверх изменив свой индекс на -1. со своими данными в массиве данных. Данные в массиве, тоже, должны перезаписаться для элемента с индексом на -1 До нажатия кнопки удаления: 1) (0) День рождения друга 1 (int day[0], month[0], year[0], hour[0], min[0]; bool galka_napominaniya[0];) 2) (1) день рождения друга 2 (int day[1], month[1], year[1], hour[1], min[1]; bool galka_napominaniya[1];) 3) (2) день рождения друга 3 (int day[2], month[2], year[2], hour[2], min[2]; bool galka_napominaniya[2];) После нажатия кнопки удаления: 1) (0) День рождения друга 1 (int day[0], month[0], year[0], hour[0], min[0]; bool galka_napominaniya[0];) 2) (1) день рождения друга 3 (int day[1], month[1], year[1], hour[1], min[1]; bool galka_napominaniya[1];) К каждой строчки привязаны данные (день, месяц, год, напомнить заранее (бул 1 или 0) - галка, часы и минуты) в глобальном массиве данных). И еще, кое-что меня тут волнует. Если я буду удалять последний элемент списка. Как тут будет происходить перерасчет данных в массиве, если я все настрою на -1. Тут не будет ошибки? В заключении. Я, примерно, предполагаю как это сделать. Но... не хочу рисковать и тратить кучу времени на перепроверку своих предположений, если среди вас есть те, кто смогут мне сразу сказать как надо. Спасибо, заранее, всем кто посодействует. Добавлено через 2 часа 15 минут Спасибо, всем кто проявил интерес к моему вопросу. Я, к сожалению не дождался и попробовал оправдать свои догадки. Они подтвердились. Проблема решена. Всем спасибо!
0
|
|
| 16.01.2016, 17:05 | |
|
Ответы с готовыми решениями:
5
|
|
34 / 34 / 21
Регистрация: 22.09.2013
Сообщений: 401
|
|
| 17.01.2016, 15:51 | |
|
Только 1 вопрос. Зачем такие сложности c массивами и поиском элементов если можно использовать базы данных?
0
|
|
|
0 / 0 / 0
Регистрация: 19.03.2016
Сообщений: 10
|
||||||
| 19.03.2016, 15:40 | ||||||
|
Салют. Очень нужна помощь.
Есть программа с минимальным набором функций, задача которой просто загружать и отображать данные каталогизированные вручную.
Теперь мне хотелось бы реализовать следующую функцию. Представим теоретически, что есть еще и s7, которая будет означать оценку по пятибалльной шкале. Будет содержать в себе только одно число и вполне себе конвертироваться в int при желании. Как сделать так, чтобы при, например, галочке на чекбоксе из ЛистБокса и СтрингЛиста удалялись все строки, в которых s7 < 4. В ЛистБоксе со сдвигом вверх, конечно. TStringList содержит в себе кучу параметров вида "Название|Год|Жанр|Режиссер|имя_обложки| Аннотация". ListBox1 же грузит по сути тот же список, но уже из другого файла, где хранятся только названия, но в том же порядке. Как бы это дело провернуть? По возможности без серьезных изменений - программист из меня никакущий. БД, пожалуйста, не предлагать, я в них не шарю. Выручите, пожалуйста.
0
|
||||||
|
|
||
| 21.03.2016, 13:29 | ||
|
Лучше выложи проект и файлы данных, чтобы люди могли в них с минимальными трудозатратами поковыряться, так дело быстрее пойдет)
0
|
||
|
0 / 0 / 0
Регистрация: 19.03.2016
Сообщений: 10
|
|
| 22.03.2016, 18:40 | |
|
Файла было два потому как отсутствие знаний замещаю кривыми костылями.
От второго все же сумел избавиться, но теперь у меня вообще полный абзац: куча СтрингЛистов. Может, кто-нибудь потыкает носом, что и где я делаю неправильно, с пояснениями? А я, наверняка, неправильно делаю многое. Основной функционал то в норме. Существенная проблема пока одна: при вызове контекстного меню на поле с режиссером в листбокс забиваются все его фильмы, но основной стринглист не хочет никак с ним правильно взаимодействовать. Либо данные не заполняются, либо еще что-нибудь. Архив прилагаю. Пишу в Borland C++ 2006. Интересует пока только происходящее на первой форме. Все, что не работает на остальных трех, не работает потому как я туда еще не добрался. Заранее спасибо.
0
|
|
|
0 / 0 / 0
Регистрация: 19.03.2016
Сообщений: 10
|
|
| 25.03.2016, 12:48 | |
|
Спасибо всем никому, кто прочитал это сообщение и откликнулся, я уже справился сам. =D
Для тех, кто найдет это сообщение спустя пять лет: проблема была в функции strtok, которая рубила строку и все другие строки, в которые я пытался строку бэкапнуть, я сделал костыль типа такого str2 = SubString(str, str.Length) И потом использовал уже str2.
0
|
|
| 25.03.2016, 12:48 | |
|
Помогаю со студенческими работами здесь
6
Найти произведение всех положительных четных элементов массива и сумму их индексов Удаление четных элементов массива,больших среднего арифметического всех элементов массива Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи
и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|