![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 22.10.2009
Сообщений: 27
|
![]()
может этот вопрос уже обсуждался, но всё же,
столкнулся с проблемой: бд подключена к DBGrid, DBGrid отображена в Form1, необходимо чтобы по клику на строку из таблицы открывалась Form2... как это реализовать??! и каким образом сделать так чтобы на Form2 в бд-едитах отображалась вся инфа строки из бд на которую я кликнул... надеюсь на вашу помощь и заранее благодарен! |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 25.05.2010
Сообщений: 169
|
![]()
передавать в переменнуй нужную инфу, и при создании формы её грузить. Тогда Создание второй формы, надо описывать в самом клике.
Код:
Код:
|
![]() |
![]() |
![]() |
#3 | |
Пользователь
Регистрация: 22.10.2009
Сообщений: 27
|
![]() Цитата:
вторая форма уже создана... клика на DBGrid нет... т.е. кликая на DBGrid ничего не происходит (запущено приложение или нет)... при нажатие на строку из DBGrid форма должна открываться (а не создаваться) |
|
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 25.05.2010
Сообщений: 169
|
![]()
В принципе разницы не какой нет. Ну тогда не создавай форму. Обрабатывай переменную с инфой в onActivate вроде, а в клике пишите
Код:
|
![]() |
![]() |
![]() |
#5 | |
Пользователь
Регистрация: 22.10.2009
Сообщений: 27
|
![]() Цитата:
ведь DBGrid не баттон, и кликом на нее процедуру не создашь.. плюс форма должна открываться кликом на строку в таблице, а не на DBGrid как будет выглядеть сама процедура? если возможно напишите примерный код начиная с procedure поставлю вопрос по другому... в событиях DBGrid есть ивент "OnDblClick" - двойной клик... напишите пожалуйста примерную процедуру которую нужно повесить на это событие, чтобы открывалась созданая форма заполненая данными со сторки на которую я кликаю... очень очень нужно!!!! полииииз Последний раз редактировалось Stilet; 14.06.2010 в 09:32. |
|
![]() |
![]() |
![]() |
#6 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Создаешь форму, на нее кидаешь DB компоненты, связываешь их с тем же DataSource что и грид.
В клике эту форму показываешь Форма.ShowModal; DB компоненты, на ней сами подхватят информацию из записи. на которой случится переход по клику мышки
I'm learning to live...
|
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 05.02.2009
Сообщений: 324
|
![]() Код:
на событие формы form2, onClose можно повесить такой код: Код:
Тяжело быть бестолковым.....
![]() Последний раз редактировалось Dark_Spirit; 14.06.2010 в 10:40. |
![]() |
![]() |
![]() |
#8 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,087
|
![]()
Я обычно это вешал на события OnAfterInsert и OnAfterEdit соответствующего TDataSet (TTable, TQuery,...).
т.е. код, приведенный Dark_Spirit'ом, помещаем в обработчики этих событий. Что даёт именно такая связка? 1) При использовании DBNavigator'a не нужно совершать никаких телодвижений. При создании/редактировании записи форма появится "автоматически"; 2) Оставляем в DBGrid'e возможность редактирования, но устанавливаем выделение всей строки. Двойной клик по строке приведет к редактированию записи, т.е. вызовется все тот же OnAfterEdit и появится окошко. 3) При обработке OnDblClick нужно учитывать, что двойной клик можно совершить по пустому месту и тогда вылетит ошибка или будет непонятное поведение. Частный случай: двойной клик при пустом наборе данных. Редактировать нечего, а будет попытка редактирования записи. В моём подходе этого недостатка нет. |
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 22.10.2009
Сообщений: 27
|
![]()
Огромное всем спасибо за помощь...
Stilet, Dark Spirit всё отлично работает... 2 Пучков: идею я понял, это действительно удобней, но повесил процедуры на указаные события и форма не открывается ![]() буду признателен более глубоким подробностям и вопрос оффтоп: как можно очистить все dbeditы, dbcomboboxы, dbmemo, короче все поля на форме, нажатием на баттон? т.е. кнопка на одной форме открывает 2ую форму с пустыми компонентами... Последний раз редактировалось insense; 14.06.2010 в 13:24. |
![]() |
![]() |
![]() |
#10 | |
Форумчанин
Регистрация: 05.02.2009
Сообщений: 324
|
![]() Цитата:
Код:
Тяжело быть бестолковым.....
![]() |
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Создание новой формы с нужным количеством строк. | konistra | Microsoft Office Excel | 13 | 01.06.2010 23:28 |
Из DBGrid одной формы отразить в ListBox на другой формы | VenZell | БД в Delphi | 2 | 28.05.2010 07:27 |
Появление новой формы при нажатии на кнопку. | vedro-compota | Общие вопросы Delphi | 14 | 11.05.2010 15:08 |
Открытие новой формы в VB | byte916 | Помощь студентам | 1 | 04.03.2008 19:10 |
Создание новой записи | Gerox | БД в Delphi | 3 | 30.12.2007 14:22 |