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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 10.03.2009, 18:12   #1
Mishechka
Пользователь
 
Регистрация: 10.03.2009
Сообщений: 18
По умолчанию Drag & Drop в DBGrid

Мне необходимо менять порядок следования записей в DBGrid т.е. перетаскивать строки мышкой выше или ниже. Кто-нибудь знает как это сделать? Спасибо.
Paradox, BDE
Mishechka вне форума Ответить с цитированием
Старый 11.03.2009, 10:58   #2
TOJluK
Пользователь
 
Аватар для TOJluK
 
Регистрация: 13.08.2008
Сообщений: 14
По умолчанию

посмотри по сцылке
http://www.delphisources.ru/pages/fa...o_dbgrids.html
TOJluK вне форума Ответить с цитированием
Старый 11.03.2009, 12:42   #3
Mishechka
Пользователь
 
Регистрация: 10.03.2009
Сообщений: 18
По умолчанию

Цитата:
Сообщение от TOJluK Посмотреть сообщение
Там "Пример Drag and Drop между двумя DBGrid", а у меня одна DBGrid и Delphi 7, а там Delphi 3.
Mishechka вне форума Ответить с цитированием
Старый 11.03.2009, 13:43   #4
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

DBGrid отображает только то, что ему дают и порядок следования записей изменить никак не может.
Этот порядок может быть изменен только датасетом, данные из которого и отображаются в DBGrid.
Почитайте хоть самую элементарную книгу по Дельфи!
mihali4 вне форума Ответить с цитированием
Старый 11.03.2009, 14:38   #5
TOJluK
Пользователь
 
Аватар для TOJluK
 
Регистрация: 13.08.2008
Сообщений: 14
По умолчанию

Цитата:
Сообщение от Mishechka Посмотреть сообщение
Там "Пример Drag and Drop между двумя DBGrid", а у меня одна DBGrid и Delphi 7, а там Delphi 3.
Принцип тот же.
TOJluK вне форума Ответить с цитированием
Старый 12.03.2009, 11:36   #6
Mishechka
Пользователь
 
Регистрация: 10.03.2009
Сообщений: 18
По умолчанию

Цитата:
Сообщение от mihali4 Посмотреть сообщение
DBGrid отображает только то, что ему дают и порядок следования записей изменить никак не может.
Этот порядок может быть изменен только датасетом, данные из которого и отображаются в DBGrid.
Почитайте хоть самую элементарную книгу по Дельфи!
Я знаю, что работать нужно не с гридом, а с источником данных. Просто посредством грида я могу видеть свои действия: редактирование, вставку, удаление записей. Надеюсь увидеть и их перемещение. Может я просто коряво задал вопрос, но я думал так будет понятней что мне нужно, извините. Что касается книг, то у меня десяток этих "элементарных книг по Дельфи", но ни в одной нет ответа на мой вопрос. Я побегал по интернету и увидел, что сотни людей задают такой же вопрос, значит, решение найти нужно. Вот если бы я спросил как белую кнопочку сделать красненькой, то советов посыпалось бы море, а вот с датасетом что-то туго... Спасибо.
Mishechka вне форума Ответить с цитированием
Старый 12.03.2009, 11:49   #7
Mishechka
Пользователь
 
Регистрация: 10.03.2009
Сообщений: 18
По умолчанию

Цитата:
Сообщение от TOJluK Посмотреть сообщение
Вчера всё поставил и проверил, всё работает, но по-моему это шутка. В заголовке формы появляется надпись "Вы перетащили...и т.д.", но реально ничего не происходит. Но это пока предварительно, сегодня покопаюсь более конкретно, тогда скажу как и что. А ты сам пробовал? Спасибо.
Mishechka вне форума Ответить с цитированием
Старый 12.03.2009, 13:43   #8
Антон Ю.Б.
Форумчанин
 
Регистрация: 03.01.2009
Сообщений: 116
По умолчанию

Mishechka, заведите в таблице поле, по которому будут отсортированы данные. При старте D&D берите значение этого поля у текущей записи, помещайте его в невидимый TLabel, который руками отправляйте в D&D путешествие. При попытке вставки этого TLabel, определяйте позицию вставки, меняйте на 1 запросом поле сортировки для всех записей от него до соотв. конца, за исключением той записи, что пришла по D&D, ставьте нужное значение (определяемое местом вставки) и самой пришедшей записи.

Не проще ли сделать кнопки со стрелками "вверх/вниз" и менять ими порядок только двух соседних записей?
Антон Ю.Б. вне форума Ответить с цитированием
Старый 12.03.2009, 13:58   #9
Mishechka
Пользователь
 
Регистрация: 10.03.2009
Сообщений: 18
По умолчанию

Цитата:
Сообщение от Антон Ю.Б. Посмотреть сообщение
Не проще ли сделать кнопки со стрелками "вверх/вниз" и менять ими порядок только двух соседних записей?
Подскажите как это сделать, если можно, покажите код. Спасибо.
Mishechka вне форума Ответить с цитированием
Старый 12.03.2009, 14:04   #10
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Своих мыслей нет?
Тогда переезжаем к студентам...
mihali4 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
drag $ drop в DBGrid AlexandrSid Общие вопросы Delphi 13 21.06.2010 10:55
Drag & Drop + HBitmap BOBAH13 Win Api 6 19.07.2009 00:17
Drag&Drop-continue. Icons MAcK Общие вопросы .NET 2 16.09.2008 12:59
Drag&Drop в ListBox'ах MAKEDON Общие вопросы Delphi 3 21.08.2008 13:12
Drag&Drop shtuceron Общие вопросы Delphi 3 09.04.2008 19:04