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

Вниз

Продолжение изучения написания компонентов Delphi   Найти похожие ветки 

 
}|{yk ©   (2004-02-24 18:14) [0]

Пишу вот
TImageFormat = (JPG,BMP,PNG);

FImageFormat: TImageFormat;

property ImageFormat: TImageFormat read FImageFormat write FImageFormat default PNG;

Но потом когда пишу естественное для меня (программировавшего 5 лет в С++) if self.FImageFormat=BMP then

получаю несовместимые типы. А как нужно в Delphi писать?


 
Sandman25+1   (2004-02-24 18:27) [1]

У меня никакой ошибки не выдало.


 
Skier ©   (2004-02-24 18:29) [2]

> }|{yk © (24.02.04 18:14)
1) Используй префикс
TImageFormat = (ifJPG, ifBMP, ifPNG);
2) if self.FImageFormat = ifBMP then
(и без self здесь вполне можно обойтись)
3) и, видимо (?), использование case будет выглядеть более
изящно
case FImageFormat of
ifBMP : begin
end; //ifBMP
//......................
end; //case


 
Skier ©   (2004-02-24 18:30) [3]

а в принципе в строке if self.FImageFormat=BMP then ошибки нет.


 
Гаврила   (2004-02-24 18:33) [4]

Скорее всего конфликт имен


 
Reindeer Moss Eater ©   (2004-02-24 18:37) [5]

А что гадать -то?
Полный текст сообщения компилятора дает исчерпывающий ответ на вопрос.
"Incompatible types TImageFormat and ....."

Либо в текущем модуле идентификатор "BMP" определен как тип данных, либо в одном из модулей из uses.


 
Defunct ©   (2004-02-24 18:56) [6]

У меня приведенный Вами код работает.

Удерживая CTRL, кликните на BMP в строке if self.FImageFormat=BMP then, может у Вас есть какая-то переменная с таким именем.


 
}|{yk ©   (2004-02-24 19:14) [7]

Это правда так, в одно из модулей было.



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

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

Наверх




Память: 0.48 MB
Время: 0.018 c
11-12309
BelchonokH
2003-06-10 21:02
2004.03.05
MHToolTip куда пропадают подсказки?


4-12588
lefan
2003-12-26 07:04
2004.03.05
имитировать мышь и клаву...


1-12374
Evgeny78
2004-02-25 10:48
2004.03.05
Курсор мыши


1-12449
race1
2004-02-23 07:28
2004.03.05
service filename


4-12574
Vulko
2003-12-29 00:38
2004.03.05
Как мне узнать, что в буффер попал текст?