![]() |
|
![]() ![]() ![]() |
|
Solominka |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 121 Регистрация: 18.12.2009 Репутация: нет Всего: нет |
И так, вторая моя проблема.
Требовалось написать код для удаления выделенной строки из компонента StringGrid. Я написала, и всё бы ничего, он работает, но возникла такая проблема. Дело в том, что добавление записей в StringGrid идёт непосредственно из компонента DBGrid, связанного в свою очередь с Базой Данных. И удалять то удаляет... Но когда после удаления добавляешь что-то ещё, добавляется весьма криво. А когда пытаюсь записать данные из StringGrid-a в другую таблицу Базы Данных (DBGrid на форме 3), то выходит ошибка. Как сделать так, чтобы выделенная строка в StringGrid удалялась без ущерба для дальнейших нужных действий? Для пущей ясности ссыль на исходник: Исходник |
|||
|
||||
chip_and_dayl |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 603 Регистрация: 22.4.2007 Где: Украина, Киев Репутация: 2 Всего: 9 |
Оно кажись и крыво удаляет, если добавить две записи, то оно вообще нифига не удаляет, а если добавить больше 2 или трех записей, то оно якобы удаляет последнюю
-------------------- Фсё будет хорошо!!! |
|||
|
||||
Данкинг |
|
||||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 35 Всего: 130 |
Смысл? И если всё же смысл в этом есть, то при чём здесь DBGrid? Данные в любом случае берутся не из него, а из источника, к нему подвязанного.
DBGrid не может быть связан с базой данных; он может быть связан с набором данных, т.е. таблицей. ![]() Кстати, файлы до мегабайта можно прикрепить непосредственно к сообщению. Добавлено через 1 минуту и 2 секунды Вот chip_and_dayl, сразу понял, что к чему, а до меня не доходит; видимо, IQ ниже. ![]() В общем, сформулируй вопрос более конкретно. -------------------- There's nothing left but silent epitaphs. |
||||
|
|||||
Solominka |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 121 Регистрация: 18.12.2009 Репутация: нет Всего: нет |
Ой, да кстати... Что-то я и правда этого не заметила (((
В общем как мне написать ТАК, чтобы работало так как надо? |
|||
|
||||
chip_and_dayl |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 603 Регистрация: 22.4.2007 Где: Украина, Киев Репутация: 2 Всего: 9 |
Данкинг
Я исходник скачал ![]() СтрингГрид там, чтобы с общей базы выбрать несколько строк (заказ комплектующих) Добавлено через 2 минуты и 26 секунд
Изобретать и копировать не буду, если в гугл ввести stringgrid в delphi удаление строк, то много готовых написаных ф-ций ![]() Добавлено через 3 минуты и 51 секунду Не удержался и скопировал ![]()
-------------------- Фсё будет хорошо!!! |
||||
|
|||||
Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 35 Всего: 130 |
chip_and_dayl, я тоже скачал, но Парадокс юзать не умею - никогда с ним не работал - потому прога не запускается. К тому же там путь к базе прописан чётко в корне диска C:, которого у меня нет.
![]() ![]() -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
chip_and_dayl |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 603 Регистрация: 22.4.2007 Где: Украина, Киев Репутация: 2 Всего: 9 |
С ним работать и не нужно, на его нужно смотреть или просто вспоминать о нем :) Я тут вывел правило, если на форуме появляются упоминания о Парадоксе, значить сессия на носу :) -------------------- Фсё будет хорошо!!! |
|||
|
||||
Solominka |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 121 Регистрация: 18.12.2009 Репутация: нет Всего: нет |
chip_and_dayl, я эти процедуры пробовала и ни с одной из них программа не работает...
И здесь процедура SGDeleteRow тоже не работает... Жалуется почти на все слова... |
|||
|
||||
chip_and_dayl |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 603 Регистрация: 22.4.2007 Где: Украина, Киев Репутация: 2 Всего: 9 |
ммм..у меня все работает.
В кнопке Удаления я поместил SGDeleteRow(StringGrid1, номер строки); Ну и само собой скопировал процедуру в код Осталось только узнать, как считать строку где стоит указатель и передавать соответствующий номер Сча гляну, может и отправлю исходник О:) -------------------- Фсё будет хорошо!!! |
|||
|
||||
Solominka |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 121 Регистрация: 18.12.2009 Репутация: нет Всего: нет |
А у меня что-то ничего(((
Я наверное не те вещи меняю... И не там где надо ((( Исходник - было бы конечно здорово... |
|||
|
||||
chip_and_dayl |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 603 Регистрация: 22.4.2007 Где: Украина, Киев Репутация: 2 Всего: 9 |
Вот код, там отдельно кнопка Удалить2
Присоединённый файл ( Кол-во скачиваний: 38 ) ![]() -------------------- Фсё будет хорошо!!! |
|||
|
||||
Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 35 Всего: 130 |
Неужели кроме ничего в ВУЗах рассказывать не про что? ![]() Впрочем, у меня образование гуманитарное, я вообще не знаю, как в ВУЗах программирование преподают. ![]() -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
chip_and_dayl |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 603 Регистрация: 22.4.2007 Где: Украина, Киев Репутация: 2 Всего: 9 |
По поводу вставки после удаления строк. Там у тебя глобальная И, которая только увеличивается. При удаление ее нужно уменьшать И=И-1 или dec(i)
Добавлено @ 20:51 Данкинг Наверно нечего или точнее некому З. Ы. Интересно, шоколадку за помощь получу О:) З.Ы. З.Ы. Люблю свиточ молочный :) Это сообщение отредактировал(а) chip_and_dayl - 18.12.2009, 20:52 -------------------- Фсё будет хорошо!!! |
|||
|
||||
Solominka |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 121 Регистрация: 18.12.2009 Репутация: нет Всего: нет |
chip_and_dayl , после Вашего удаления так же, как и после моего, нельза нормально добавить содержимое стринг грида в таблицу Zakaz формы 3... Выдаётся ошибка... Попробуйте после удаления нажать кнопку "заказать"... А надо чтобы всё было нормально... :(
Шоколадку бы я вам отдала, но находитесь вы к сожалению далековато (в другой стране)... А так, для хороших людей ничего не жалко ![]() Данкинг , вам крупно повезло... Нам его вообще НИКАК не предподают... Тупо дают задания и методички к лабам... в лучшем случае - пару корявых электронных книг, в худшем - вообще ничего не дают... Это сообщение отредактировал(а) Solominka - 18.12.2009, 21:04 |
|||
|
||||
chip_and_dayl |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 603 Регистрация: 22.4.2007 Где: Украина, Киев Репутация: 2 Всего: 9 |
Solominka
Конечно выскакивает ошибка. В кнопке удаления 2, которую я добавил нужно добавить такую строчку w=w-1 Добавлено через 1 минуту и 49 секунд А вообще я не пойму зачем переменная i и w, они кажись обозначают одно и тоже. Суть проблемы в том, что когда ты добавляешь строку одну, то и=1 и в=1, если добавишь вторую строку и=2 и в=2, но если ты удаляешь строку ты ничего не делала, вот оно в базу записывало пустые Добавлено через 4 минуты и 40 секунд а также добавь i=i-1 после w=w-1 -------------------- Фсё будет хорошо!!! |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Базы данных и репортинг" | |
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |