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

Вниз

Дополнительные параметры   Найти похожие ветки 

 
zdn   (2005-02-24 13:44) [0]

У меня в проектк все формы, кроме главной, автоматом не создаются.
Для открытия форм используеться следующая процедура:

procedure ShowFormF(frm:TFormClass;InsEdit:integer);
//InsEdit - режим открытия формы
var f:TForm;
begin
 f:=frm.Create(Application);
 with f do
 try
  Tag:=InsEdit;
  ShowModal;
 finally
  free
 end
end;

Возникла необходимость, при создании формы, передавать массив дополнительных параметров.
Подскажите, пожалуйста, как это можно реализовать?

Заранее благодарен!!!


 
zdn   (2005-02-24 14:09) [1]

Никто, никогда, такого не делал?


 
MU   (2005-02-24 14:21) [2]

если  все ваши формы наследники от одной (не TForm!),
то добавьте в базовую форму свойства или переопределите конструктор.
а так... без глобальных переменных не обойтись...
...
var Params :  TMyParams;

var f:TForm;
begin
Params := ...;
f:=frm.Create(Application);
Params := ...;
with f do
try
 Tag:=InsEdit;
 ShowModal;
finally
 free
end
end


 
zdn   (2005-02-24 14:26) [3]

Спасибки, буду пробовать


 
Чапаев ©   (2005-02-24 14:27) [4]

Tag:=Integer(@MyArray[0]); -- ну вот что-то вроде этого...


 
zdn   (2005-02-24 14:36) [5]

Не не пройдет, дело в том что массив стринговый,
т.е. значения в нем будут именно стриногвые, а не интежер.


 
Инструктор   (2005-02-24 14:38) [6]

> [5] zdn   (24.02.05 14:36)

Опа. А при чем тут это?


 
Arm79 ©   (2005-02-24 14:40) [7]

zdn   (24.02.05 14:36) [5]

Не не пройдет, дело в том что массив стринговый,
т.е. значения в нем будут именно стриногвые, а не интежер.


В tag записывается адрес массива. Совершенно неважен тип его элементов.


 
zdn   (2005-02-24 14:47) [8]

Уточняю вопрос.
Передается массив из несколких значений. Можно ли в таг занести несколко значений, по-моему низя или я чо-то не понимаю!!!


 
Инструктор   (2005-02-24 14:51) [9]

>  [8] zdn   (24.02.05 14:47)

В таг можно занести ССЫЛКУ на массив или чего-там.


 
DiamondShark ©   (2005-02-24 14:59) [10]

Вы сейчас насоветуете.
Потом вместе будете AV ловить после передачи ссылок на локальные массивы.

Самый прямой вариант -- сделать общего предка для форм и написать конструктор с параметрами.


 
Инструктор   (2005-02-24 15:03) [11]

> [10] DiamondShark ©   (24.02.05 14:59)

Это верно - я и не предлагаю так делать. Но замечание такого вида -

> [5] zdn   (24.02.05 14:36)

как обойти? Безусловно лучше огород не городить.


 
zdn   (2005-02-24 15:08) [12]


> DiamondShark ©   (24.02.05 14:59) [10]

Это идея спасибки. Можно просто сделать еще одну процедуру
которая будет открывать форму с параметрами.
Всем спасибо, чо-то сам до этого не додумался.

Хорошо все же общение с умными людьми.



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

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

Наверх




Память: 0.47 MB
Время: 0.038 c
14-1108703061
DelphiN!
2005-02-18 08:04
2005.03.13
Жизнь в Одессе


14-1108993511
juice
2005-02-21 16:45
2005.03.13
C++ Builder 5 Fatal: Unable to open file FILECTRL.OBJ


8-1095511894
Jenek
2004-09-18 16:51
2005.03.13
Формат MP3


6-1105215904
Colonel
2005-01-08 23:25
2005.03.13
Knocking to ....


1-1109325312
denis24
2005-02-25 12:55
2005.03.13
Неявное обращение к Stringlist





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский