Есть некая программа. Весь код приводить не буду, вот часть:
Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, StdCtrls;
type
TForm1 = class(TForm)
MainMenu1: TMainMenu;
m_file: TMenuItem;
ListBox1: TListBox;
Label1: TLabel;
Label2: TLabel;
Memo1: TMemo;
Label3: TLabel;
m_out: TMenuItem;
m_save: TMenuItem;
m_clear: TMenuItem;
Memo2: TMemo;
procedure m_outClick(Sender: TObject);
procedure m_saveClick(Sender: TObject);
procedure m_clearClick(Sender: TObject);
procedure my_sort;
procedure my_readfile;
procedure my_out;
function GetPlainText(AList : TStringList) : String;
private
{ Private declarations }
public
end;
us_struct = record // us_struct: структура данных одного участника
sename: string; // фамилия
name: string; // имя
city: string; // город
org: string; // организация
end;
var
Form1: TForm1;
list: array of us_struct; // массив (структур) всех участников
city: array of string; // массив городов
implementation
{$R *.dfm}
function TForm1.GetPlainText(AList: TStringList): String; // функция заменяет перенос строки на пробел
var
I : Integer;
begin
Result := AList[0]; // присваиваем переменной result значение первой строки списка
For I := 1 To AList.Count-1 Do Result := Result + ' ' + AList[i]; // дописывем к первой строке по очереди содержимое остальных строк
end;
procedure TForm1.my_sort;
// сортировка учатников
var
x: us_struct;
i,j:integer;
begin
for i:=0 to high(list)-1 do
for j:=i+1 to high(list) do
if list[i].sename>list[j].sename then
begin
x:=list[i];
list[i]:=list[j];
list[j]:=x;
end;
end;
Задача: выделить процедуру my_sort в отдельный модуль (unit) и подключить его.
Пытался использовать просто uses unit2, создавал unit2, но в упор не понимаю что там должно быть написано. Если брать только объявление и описание процедуры-ругается на us_struct, что не знает что это такое. Хотя вроде как объявлена структура глобальной.