Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Синтаксис
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 11.10.2007, 10:56
Lie Lie вне форума
Прохожий
 
Регистрация: 21.04.2007
Сообщения: 10
Репутация: 10
По умолчанию процудура для всех юнитов

У меня есть Unit1, Unit2...Unit_X
Нужно чтобы каждом из этих Unit'ов работала созданная мною процедура (допустим GetCount). Где ее нужно прописать
Ответить с цитированием
  #2  
Старый 11.10.2007, 11:08
Аватар для Winny
Winny Winny вне форума
Продвинутый
 
Регистрация: 26.05.2007
Адрес: Планета земля, Россия, Москва
Сообщения: 620
Репутация: 30
По умолчанию

Раздел public
__________________

Ответить с цитированием
  #3  
Старый 11.10.2007, 11:37
Lie Lie вне форума
Прохожий
 
Регистрация: 21.04.2007
Сообщения: 10
Репутация: 10
По умолчанию

Внизу пишет:
[Error] Unit2.pas(151): Overloaded procedure 'GetCount' must be marked with the 'overload' directive
Что делать?
Ответить с цитированием
  #4  
Старый 11.10.2007, 11:42
Аватар для Winny
Winny Winny вне форума
Продвинутый
 
Регистрация: 26.05.2007
Адрес: Планета земля, Россия, Москва
Сообщения: 620
Репутация: 30
По умолчанию

Например:
Код:
procedure GetCount;
begin
Код процедуры
end;
Потом надо написать в разделе public вот что:
Код:
public
procedure GetCount;
Всё! Теперь можно вызывать эту процедуру из других юнитов.
__________________

Ответить с цитированием
  #5  
Старый 11.10.2007, 11:43
Аватар для Winny
Winny Winny вне форума
Продвинутый
 
Регистрация: 26.05.2007
Адрес: Планета земля, Россия, Москва
Сообщения: 620
Репутация: 30
По умолчанию

У меня проблем не было, проверь.
__________________

Ответить с цитированием
  #6  
Старый 11.10.2007, 14:46
Аватар для zip000
zip000 zip000 вне форума
Начинающий
 
Регистрация: 24.07.2007
Сообщения: 194
Репутация: 25
По умолчанию

Winny, ты не то пишешь, ты написал про функции формы, которая содержится в модуле, а это не то.

Кароч, есть 2 похожих способа решения данной проблемы.
1) Запихнуть процедуру, например, в Unit1, а потом в остальных юнитах в Uses добавлять Unit1.
2) Создать текстовый документ, в него поместить процедуру, переименовать файл и сделать расширение *.inc. Затем перед тем местом где будет использоваться данная процедура (перед началом процедуры\функции пишешь {$I Имя_Файла_С_ПРОЦЕДУРОЙ.inc}. Есесьно писать это надо 1 раз в модуле.

Пример

Файл MyFunc.inc
Код:
function Sum(X, Y : Integer) : Integer;
begin
  Result := X + Y;
end;
Код в модуле
Код:
unit Unit1;
...........
interface
...........
implementation
...........
{$I MyFunc.inc}
procedure TForm1.FormCreate(Sender: TObject);
begin
  Caption := IntToStr(Sum(2, 3));
end;
__________________
Не профи, но и не чайник . D6 - лучше не придумали. Пока.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

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

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 10:04.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter