Компьютерный форум NoWa.cc Здесь может быть Ваша реклама
Правила Форума
редакция от 22.06.2020
Форум .::NoWa.cc::.
Вернуться   Компьютерный форум NoWa.cc > В помощь вебмастеру > Программирование > Delphi

Уважаемые пользователи nowa.cc. Мы работаем для вас более 20 лет и сейчас вынуждены просить о финансовой помощи по оплате за сервер.
Окажите посильную поддержку, мы очень надеемся на вас. Реквизиты для переводов ниже.
Webmoney Webmoney WMZ: Z021474945171 Webmoney WME: E159284508897 Webmoney WMUSDT: T206853643180
Кошелёк для вашей помощи YooMoney 4100117770549562
YooMoney Спасибо за поддержку!

Ответ
 
Опции темы Опции просмотра Language
Старый 20.08.2008, 13:10   #1
Неактивный пользователь
 
Пол:Мужской
Регистрация: 19.06.2008
Сообщений: 95
Репутация: 1
По умолчанию Подскажите как передать форму в другой модуль

Здравствуйте. Подскажите, кто знает. Пишу приложение под MS Sql Server 2005.
Есть 3 формы: Form1 - окно, Form2 - дерево с выбором окна, Form3 - главная. В Form1 след. код

uses
Windows, Messages, SysUtils..., Form2;
...
private
{ Private declarations }
FNavigator: TForm2;
...
function TFormInventoryList.GetNavigatorForm: TForm;
begin
if not Assigned(FNavigator) then
begin
FNavigator:= TfrmInventoryNavigator.Create(Self);
end;
Result:= FNavigator;
end;{По этой функции в Form3 отображается дерево}
...

В Form2 заполняется дерево из базы. Есть проца

implementation
uses Form1;
{$R *.dfm}
...
procedure TForm2.SetNode(arg: Integer);
begin
if Node <> arg then begin
FNode := arg;
end;{это просто свойство с id выбранного узла} Form1.AdoInventory.Parameters.ParamByName('Invento ryCategory').Value:=Node;
Form1.AdoQuery1.ExecSQL;
end;
...

Когда выбираем какой-нибудь узел дерева, эта проца вызывает запроc, который выбирает значения из базы. Эти значения попадают в грид на форме Form1.
Но вот тут Form1.AdoInventory.Parameters.ParamByName('Invento ryCategory').Value:=Node;
FormInventoryList.AdoQuery1.ExecSQL;
начинет ругаться:
Project Proj1.exe raised exception class EAccessViolation with message 'Access violation at address 007FC6C5 in module 'Proj1.exe'. Read of address 00000364'.
Я так понял, что Form2 не получает доступа к Form1. Как передать Form1 в Form2.
Litvinenko_A вне форума
 
Ответить с цитированием Вверх
Здесь может быть Ваша реклама
Здесь может быть Ваша реклама


Реклама: Мебельный магазин: кухонные столы купить - Переходи на сайт!Магазин бытовой техники: холодильник maunfeld mff50wd - переходи на сайт ТАЙМТВ!мигель анхель сильвестреМагазин бытовой техники: генератор купить - переходи на сайт ТАЙМТВ!Мебельный магазин: стулья барные - Переходи на сайт!


Старый 20.08.2008, 22:44   #2
bondar yuriy
Неактивный пользователь
 
Пол:Мужской
Регистрация: 19.01.2008
Сообщений: 15
Репутация: 0
По умолчанию Ответ: Подскажите как передать форму в другой модуль

А ты на всякий случай проверь в процедуре SetNode Assigned(Form1) :-)
bondar yuriy вне форума
 
Ответить с цитированием Вверх
Ответ


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Квк из Visual Foxpro в 1С передать информацию Roberts Базы данных 10 04.05.2013 22:49
Шаблон для печати в форму. ERO1 Школа Photoshop / Photoshop School 1 05.05.2009 13:11
Подскажите как переместит Мои документы в Висте на другой Диск !!! smackvirus Windows Vista 2 19.09.2007 22:01

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 23:01. Часовой пояс GMT +3.


Copyright ©2004 - 2026 NoWa.cc

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2026, vBulletin Solutions, Inc. Перевод: zCarot
Время генерации страницы 0.04051 секунды с 11 запросами