Модераторы: Snowy, MetalFan, bems, Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Работа с DBGrid (редактирование данных строки), Как это сделать новичку... 
V
    Опции темы
rs1c
Дата 9.8.2009, 21:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 27
Регистрация: 9.8.2009

Репутация: нет
Всего: нет



Есть DBGrid при клике на строку открыть новое окно с возможностью редактирования данных этой строки или только просмотра.
На новой форме все элементы уже есть.

Подскажите как это можно реализовать?.

Спасибо.

PM MAIL   Вверх
Frees
Дата 10.8.2009, 07:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 16
Всего: 54



Цитата(rs1c @  10.8.2009,  00:23 Найти цитируемый пост)
На новой форме все элементы уже есть.

а какие там у тебя элементы TDBEdit?

сделай им один общий ДатаСоурсе и после создания указывай ему датасет из грида


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
defmzk
Дата 10.8.2009, 07:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 16.7.2009

Репутация: нет
Всего: нет



Код

procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
   FormEdit.Showmodal;
end;


Из датасурса к DBgrid'у берешь Id поля, а в другой форме в своем датасурсе переходишь на это поле, либо же связываешь одним датасурсом обе формы.

Это сообщение отредактировал(а) defmzk - 10.8.2009, 07:34
PM MAIL   Вверх
former
Дата 10.8.2009, 10:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 4
Всего: 17



rs1c, вынеси все компоненты связанные с доступом к БД к от дельный DataModul. Подключи его в юнитах тех форм, в которые он должен использоваться. И обращайся к DataSet-ам, как < Имя DataModul>.<Имя DataSet>.


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Frees
Дата 10.8.2009, 11:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 16
Всего: 54



офф
former,  дата модуль это конечно хороше но что это даст кроме посути ненужног датамодуля и проблем связанных с использования общих дата сетов




--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
former
Дата 10.8.2009, 12:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 4
Всего: 17



Frees, представь себе, что DataSet, допустим, 20-30.  В этом случае, когда несколько форм используют один и тот же DataSet, может возникнуть путаница, тем более если форм тоже не мало. А так все централизовано. Еще это удобно, когда доступ идет через сервер приложений.
Использование DataModul позволяет осуществлять обработку событий, исключений и т.д. и т.п. в отдельном модуле и не смешивать код формы с этими обработчиками.
Цитата(Frees @  10.8.2009,  11:50 Найти цитируемый пост)
проблем связанных с использования общих дата сетов

Каких проблем?


Это сообщение отредактировал(а) former - 10.8.2009, 12:17


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Frees
Дата 10.8.2009, 12:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 16
Всего: 54



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




--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
former
Дата 10.8.2009, 12:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 4
Всего: 17



Frees, если так, то конечно. Но автор поста говорит про конкретную запись, переход по которым не осуществляется в форме редактирования.


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Frees
Дата 10.8.2009, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 16
Всего: 54



former,  я к тому что дата модуль ему не нужен можно дата сет на форме держать и передавать его форме редактирования

либо как сказал defmzk, передавать ИД, (ИМХО) так правельнее будет 


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
former
Дата 10.8.2009, 12:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 4
Всего: 17



Frees, я не говорю, что так не правильно. В данном случае может и не стоит усложнять, и предложенных тобой и defmzk шагов достаточно. Но знаешь как бывает, сегодня в приложении две формы, а завтра уже 20-30.  smile Поэтому рано или поздно начинаешь задумываться как это все систематизировать. Каждый  решает сам.


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
rs1c
Дата 10.8.2009, 21:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 27
Регистрация: 9.8.2009

Репутация: нет
Всего: нет



Цитата(defmzk @ 10.8.2009,  07:30)
Код

procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
   FormEdit.Showmodal;
end;


Из датасурса к DBgrid'у берешь Id поля, а в другой форме в своем датасурсе переходишь на это поле, либо же связываешь одним датасурсом обе формы.

Сделал как "defmzk" -  все получилось - именно то, что и хотел получить...! smile  Спасибо огромное
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0506 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.