Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2006.07.02;
Скачать: [xml.tar.bz2];

Вниз

public mymass: array of integer - не виден в другом модуле :(   Найти похожие ветки 

 
Layner ©   (2006-05-24 16:33) [0]

Здравствуйте господа программисты! Подскажите, как мне правильно объявить массив (определить размерность, заполнить..) в одном unit, чтобы можно было его использовать в другом юните.

В первом модуле я пишу:

 public
   mymass: array of integer;

Во втором пытаюсь его вызвать, но не могу. Любые переменные, которые так же public вызываюся, а массив также нельзя вызвать? Если такого нельзя, может быть в таких случаях надо копировать массив из одного модуля в другой модуль? Или ссылку передать? Заранее благодарю за любой ответ.


 
Сергей М. ©   (2006-05-24 16:36) [1]


> массив ..вызвать


Что такое "вызвать массив" ?

Иллюстрируй в коде


 
Игорь Шевченко ©   (2006-05-24 16:50) [2]

Все работает

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

type
 TForm1 = class(TForm)
   procedure FormShow(Sender: TObject);
 public
   Bar: array of Integer;
 end;

var
 Form1: TForm1;

implementation
uses
 Unit2;

{$R *.DFM}

procedure TForm1.FormShow(Sender: TObject);
begin
 Foo (Self);
end;

end.


unit Unit2;

interface
uses
 Unit1;

procedure Foo (FormClass: TForm1);

implementation
uses
 Dialogs;

procedure Foo (FormClass: TForm1);
begin
 ShowMessageFmt ("Bar length = %d", [Length(FormClass.Bar)]);
end;

end.


 
Layner ©   (2006-05-25 08:16) [3]

Здравствуйте!

Все понял! В общем пытался я вызвать этот массив, а так как нагородил прилично, сам не мог понять, почему же не вызывается элемент массива. Кроме того, инспектор кода не показывает ссылку на название массива, хотя если вписать вручную, то компилится без ошибки.

Суть - есть TreeView - дерево папок "вирт. полок в магазине", у каждой папки есть "товары" которые лежат в ListView и в массиве (их ID), и цель "таскать" товары из папки в папку. Ну и сам забыл, что при OnDragDrop у меня папка в дереве становится другая, и массив переициализируется.

Сейчас переделаю, в принципе ничего сложного :)


 
Сергей М. ©   (2006-05-25 08:27) [4]


> и в массиве (их ID)


Зачем заводить какой-то массив, когда для хранения доп.инф-ции (ID - это и есть доп.инф-ция) каждый TTreeNode и каждый TListItem имеет св-во Date ?


 
Loginov Dmitry ©   (2006-05-25 08:49) [5]

Сергей М. ©   (25.05.06 8:27) [4]
имеет св-во Date ?


Поправлю, Data :)



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

Форум: "Основная";
Текущий архив: 2006.07.02;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.01 c
2-1149601521
JustNick
2006-06-06 17:45
2006.07.02
Работа с DBCombobox


2-1150265000
Maxim_82
2006-06-14 10:03
2006.07.02
Помогите установить компонеты DSPack


2-1149847414
Balkon
2006-06-09 14:03
2006.07.02
Причина ошибки Access Violation


15-1149227089
Ру
2006-06-02 09:44
2006.07.02
Чем восстановить данные на винте.


15-1149682538
Vlad Oshin
2006-06-07 16:15
2006.07.02
Телевизор





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский