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

Вниз

Почему TBitmap становится недоступным, если есть ссылка на Window   Найти похожие ветки 

 
TStas ©   (2006-01-03 16:47) [0]

Собственно сабж. Ситуация уже не первый раз повторялась. В модуле нажны два типа: TBitmap и TPoint. Первый живет в Graphics, второй в Windows. Как только добавляю ссылку на Windows компилятор начинает придираться к строчке bmp:=TBitmap.Create;
И как с этим бороться?
PS Модуль, конечно, не модуль формы, там все нормально. Попытки добавлять не в верхний, а в нижний uses проблему не решают.


 
Наиль ©   (2006-01-03 16:49) [1]

При неоднозначности приоритетом обладает последний перечисленый в uses модуль. Поэтому ставь Windows первым и забудь о проблеме.


 
TStas ©   (2006-01-03 17:03) [2]

Речь идет о порядке перечисления? И верхний или нижний uses значения не имеет?


 
Наиль ©   (2006-01-03 17:14) [3]

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


 
Наиль ©   (2006-01-03 17:21) [4]

Если ты ещё не догодался (что маловероятно), сообщаю что неоднозначность возникает из-за того, что в модуле Windows есть свой TBitmap. Соотвествено у него нет тех методов и свойств (в частности Create) которые, ты пытаешься вызвать. Более того, у него вообще нет ни каких свойств (помоему, это просто число).


 
sniknik ©   (2006-01-03 17:29) [5]

можно решить так
bmp:= Graphics.TBitmap.Create;
и плевать в каком порядке модули обьявлены.


 
tesseract ©   (2006-01-03 19:02) [6]

Можно просто перенести объявление Tpoint в свой модуль.


> Речь идет о порядке перечисления? И верхний или нижний uses
> значения не имеет?


Имеет, ой как имеет. Объявленный в секции implementation модуль не гонит на перекрёстные ссылки, но не может использовать в объявлениях классов процедур и переменных.


 
TStas ©   (2006-01-03 19:54) [7]

>Наиль
Догадался, притом сразу. Щелкнуть мышкой при нажатом контроле у меня ума хватило. Вроде, должно решить проблему. Ведь в моделе формы именно так и перечислены они, Windos раньше Graphics
>tesseract
Еще бы :)


 
tesseract ©   (2006-01-04 12:09) [8]

Помогло?



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

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

Наверх




Память: 0.48 MB
Время: 0.052 c
2-1137577282
Andrey235
2006-01-18 12:41
2006.02.05
Как програмно создать компоненту на форме?


2-1137432508
tort
2006-01-16 20:28
2006.02.05
Копировать файлы


2-1137662706
49 Cent
2006-01-19 12:25
2006.02.05
Запрос выдает ошибку "Недопустимое имя псевдонима"


9-1124615893
McSource
2005-08-21 13:18
2006.02.05
Освещение


1-1135863283
kyn66
2005-12-29 16:34
2006.02.05
Создание генератора случайных билетов.