Недавно добавленные исходники

•  TDictionary Custom Sort  1 852

•  Fast Watermark Sources  1 882

•  3D Designer  3 310

•  Sik Screen Capture  2 302

•  Patch Maker  2 476

•  Айболит (remote control)  2 298

•  ListBox Drag & Drop  1 900

•  Доска для игры Реверси  69 691

•  Графические эффекты  2 499

•  Рисование по маске  2 034

•  Перетаскивание изображений  1 594

•  Canvas Drawing  1 594

•  Рисование Луны  1 610

•  Поворот изображения  1 230

•  Рисование стержней  1 277

•  Paint on Shape  913

•  Генератор кроссвордов  1 425

•  Головоломка Paletto  1 107

•  Теорема Монжа об окружностях  1 453

•  Пазл Numbrix  1 029

•  Заборы и коммивояжеры  1 303

•  Игра HIP  869

•  Игра Go (Го)  830

•  Симулятор лифта  968

•  Программа укладки плитки  806

•  Генератор лабиринта  967

•  Проверка числового ввода  868

•  HEX View  1 000

•  Физический маятник  871

•  Задача коммивояжера  921

 
скрыть


Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Текущий модуль и проект



Автор: Dr. Bob

Компонент во время проектирования может знать имена текущих модулей и имя проекта. Все это можно получить с помощью ToolServices (см. файл TOOLINTF.PAS)

Имя текущего проекта можно получить с помощью вызова GetProjectName, список модулей/форм - с помощью функции GetUnitCount, которая возвратит количество модулей и затем с помощью GetUnitName(i) мы можем получить имя каждого модуля (также и с формами).

Вот примерный образец кода (получение и запись имен всех модулей/форм в StringGrid и имени проекта в Label):


procedure TInformationFrm.FormActivate(Sender: TObject);
{ необходимо: StringGrid1 (2 колонки, масса строк), Label1, Label2 }
var
  i, j: Integer;
  Tmp: string;
begin
  StringGrid1.Cells[0, 0] := 'модулей:';
  StringGrid1.Cells[1, 0] := 'форм:';
  if ToolServices <> nil then
    with ToolServices do
    begin
      Label1.Caption := ExtractFileName(GetProjectName); { простое имя }
      Label2.Caption := GetProjectName;   { полное правильное имя пути }
      for i := 0 to GetUnitCount do
      begin
        Tmp := ExtractFileName(GetUnitName(i));
        StringGrid1.Cells[0, i + 1] := Tmp;
        Tmp := ChangeFileExt(Tmp, '.DFM');
        for j := 0 to GetFormCount do
          if ExtractFileName(GetFormName(j)) = Tmp then
            StringGrid1.Cells[1, i + 1] := Tmp
      end;
    end;
end;





Похожие по теме исходники

Модуль активации программ




Copyright © 2004-2023 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте   Facebook   Ссылка на Twitter   Ссылка на Telegram