Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.19;
Скачать: CL | DM;

Вниз

одна форма и два юнита.   Найти похожие ветки 

 
appendix ©   (2004-09-06 18:05) [0]

прошу прощения за глупый вопрос.
Есть одна  форма, и Unit1 и Unit2.
Чтобы обратиться к StringGrid из Unit2 приходится писать
form1.stringGrid1.cells[0,0]:="dddd";

Но ведь как то делают чтоб не надо было писать form1. вначале?
Пробовал Uses unit1. не помогло.


 
Семен Сорокин ©   (2004-09-06 18:09) [1]


> Но ведь как то делают чтоб не надо было писать form1. вначале?

:)) орех
наспех пришло 2 варианта:
1. либо написать
with Form1 do begin
StringGrid1....
end;
2. либо передать параметром:
function Cool(StringGrid1: TStringGrid): boolean;
begin
StringGrid1....
end;


 
Anton_K ©   (2004-09-06 18:09) [2]

А кто так делает?

Ну, можно сделать так:

with form1 do begin
 stringGrid1.cells[0,0]:="dddd";
end;


 
Anton_K ©   (2004-09-06 18:11) [3]

Не подумайте, что у меня глюки. Просто мы с Семёном Сорокиным ответили одновременно :)


 
RomeoGolf   (2004-09-06 18:13) [4]

Ну вот, уже написали... То же самое начал... А вообще-то

> Но ведь как то делают чтоб не надо было писать form1. вначале?

так не делают. Если нечто является полем класса, скажем, методом формы, то класс указывать надо, IMHO, по-любому, хотя бы через With


 
Семен Сорокин ©   (2004-09-06 18:15) [5]

можно еще так:
3.
var
 StringGrid1 : TStringGrid;

StringGrid1 := Form1.StringGrid1;
StringGrid1...
:))


 
Семен Сорокин ©   (2004-09-06 18:17) [6]

и еще так:
4.
function StrinGrid1: TStringGrid;
begin
Result := Form1.StringGrid1
end;

StringGrid1...

ЗЫ. Надеюсь хватит? :)


 
Defunct ©   (2004-09-06 21:53) [7]

Лучше всего не лазить по ресурсам другого модуля, да к тому же еще и глобальным. Раз StringGrid описан в TForm1, то в нем с ним и работайте. Иначе только запутаетесь и в итоге когда-то получите AV. Старайтесь не создавать глобальных переменных. Чаще используйте фреймы.


 
Jus   (2004-09-07 01:27) [8]


> AV

что значит?


 
Jus   (2004-09-07 01:34) [9]


> Иначе только запутаетесь и в итоге когда-то получите AV

что значит AV?


 
Defunct ©   (2004-09-07 02:47) [10]

> что значит AV?

AV - Access Violation (наиболее частая и трудно излечимая ошибка в Run Time, появляется при обращении к несуществующей области памяти, несуществующему объекту и т.п.)



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

Текущий архив: 2004.09.19;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.07 c
14-1093937806
Layner
2004-08-31 11:36
2004.09.19
Есть ли спец. библиотеки (dll, com-сервера) для анализа/прогноза?


14-1093525219
ИМХО
2004-08-26 17:00
2004.09.19
Список из 50 программ


4-1091004304
Sasha73
2004-07-28 12:45
2004.09.19
Как культурно закрыть процесс ?


10-1038995997
Voronok
2002-12-04 12:59
2004.09.19
Зашел в тупик Я.


1-1094047008
bloodman
2004-09-01 17:56
2004.09.19
Возможно ли передать в процедуру динамический массив?