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

Вниз

Ошибка :(   Найти похожие ветки 

 
TCrash   (2006-12-25 12:13) [0]

Есть код

unit cScreenShot;

interface
uses Classes,Graphics,SysUtils,Windows;

type
 TScreenShot=class
   BitMap: TBitMap;
   DC: HDC;
   constructor Create;
   destructor Destroy; override;
 end;

var ScrSht: TScreenShot;

implementation

constructor TScreenShot.Create;
begin
 inherited Create;
 DC:=GetDC(0);
 BitMap:=TBitMap.Create;
end;


На выделеной строке вылезает ошибка: Object or class type required.
Смотрим хелп :This error message is given when the syntax "Typename.Methodname" is used, but the typename does not refer to an object or class type. Но в классе TBitMap есть метод Create.
Подскажите плиз в чем тут дело.


 
icWasya ©   (2006-12-25 12:23) [1]

В модуле Windows тоже есть свой TBitmap, отличающийся от Graphics TBitmap.
Что бы устранить ошибку есть два пути -
1. В списке uses всегда указывать Windows перед Graphics
2. В спорных случаях использовать явное указание модуля, откуда берётся класс
 Bitmap : Graphics.TBitmap
 Bitmap := Graphics.TBitmap.Create;


 
Ega23 ©   (2006-12-25 12:24) [2]

Данный код работает.


 
Zaw ©   (2006-12-25 12:25) [3]

TBitmap = tagBITMAP;

 tagBITMAP = packed record
   bmType: Longint;
   bmWidth: Longint;
   bmHeight: Longint;
   bmWidthBytes: Longint;
   bmPlanes: Word;
   bmBitsPixel: Word;
   bmBits: Pointer;
 end;

TBitmap это не class, а record , соответственно нет и конструктора...


 
TCrash   (2006-12-25 12:30) [4]

icWasya ©   (25.12.06 12:23) [1]
Спасибо, щаз попробую.
Zaw ©   (25.12.06 12:25) [3]
Имелся в виду именно Graphics.TBitMap


 
Anatoly Podgoretsky ©   (2006-12-25 12:34) [5]

> TCrash  (25.12.2006 12:30:04)  [4]

У тебя имелся в виду, а у компилятора?


 
Loginov Dmitry ©   (2006-12-25 15:33) [6]

<offtop>

> DC:=GetDC(0);


Вероятно, из конструктора это следует убрать.

</offtop>


 
Джо ©   (2006-12-25 15:40) [7]

> [6] Loginov Dmitry ©   (25.12.06 15:33)
> Вероятно, из конструктора это следует убрать.

А чем оно там мешает-то?


 
Loginov Dmitry ©   (2006-12-25 15:57) [8]

> А чем оно там мешает-то?


Контекст вывода желательно вероятно следует получать непосредственно перед его использованием.



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

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

Наверх




Память: 0.48 MB
Время: 0.051 c
3-1161609116
worldmen
2006-10-23 17:11
2007.01.14
Создение деревьев и работа с ними. Дайте ссылки.


2-1166701524
Vovan #2
2006-12-21 14:45
2007.01.14
Вместо локальной функции как параметра


2-1166604806
регинка
2006-12-20 11:53
2007.01.14
помогите!!!!!!!!!


15-1166433272
TUser
2006-12-18 12:14
2007.01.14
Сравнить два модуля


2-1166729445
Frag
2006-12-21 22:30
2007.01.14
MDI...