Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.08.07;
Скачать: CL | DM;

Вниз

Необходимость взаимного использования модулей   Найти похожие ветки 

 
Juice ©   (2005-07-19 20:06) [0]

Есть 2 модуля, первый - модуль формы (fm_unit), а второй модуль содержит код потока (thread_unit). Причем есть необходимость взаимного использования:

TQueryThread = class(TThread)
public
 form : TMyForm;

и

TMyFomr = class( TForm)
public
  thread : TMyThread;

Что вынуждает в разделе uses модуля fm_unit прописать thread_unit и наоборот, в uses модуля thread_unit прописать fm_unit. Получается Circular unit reference to ...
???


 
lexer ©   (2005-07-19 20:14) [1]

1.
unit thread_unit
interface
fm_unit


2.
unit thread_unit
implementation
fm_unit


 
Lexer ©   (2005-07-19 20:16) [2]

Sory, так:
1.
unit thread_unit
interface
fm_unit


2.
unit fm_unit
implementation
thread_unit


 
Juice ©   (2005-07-19 20:20) [3]

Ага, а описывать класс TMyForm тоже в разделе implementation ? Так не прокатит.


 
Anatoly Podgoretsky ©   (2005-07-19 20:31) [4]

Меняй дизайн


 
Юрий Зотов ©   (2005-07-20 05:27) [5]

> Juice ©   (19.07.05 20:06)

Как это ни может показаться странным, но совет [4] очень даже верный. Скажем, можно включить поток в юнит формы.

Другой вариант - делать более общие ссылки. Например:
Не form: TMyForm, а form: TForm.
Или не thread: TMyThread, а thread: TThread.

И потом пользуемся приведением типов (там, где потребуется).

Вот два варианта. Выбирать - Вам.


 
REA   (2005-07-20 11:02) [6]

1) вынести часть в третий юнит
2) использовать переменные с обычными классами (в т.ч. TForm) - что по сути сводится к (1)



Страницы: 1 вся ветка

Текущий архив: 2005.08.07;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.037 c
11-1100526440
Владимир Кладов
2004-11-15 16:47
2005.08.07
TPCAsm - ассемблирует на лету


14-1121689486
Koala
2005-07-18 16:24
2005.08.07
Погиб Анатолий Дяченко - актер, телеведущий


1-1121821000
asprofi
2005-07-20 04:56
2005.08.07
Вот дописал свой видео плеер "AV Player v.1.3"


3-1120152244
jonny210
2005-06-30 21:24
2005.08.07
DataSet.Fields.Fields[i].Required


14-1120933199
lookin
2005-07-09 22:19
2005.08.07
Я атеист. Вы? (Да/Нет)