Главная страница
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.014 c
3-12260
Fom
2004-02-09 11:28
2004.03.05
Падение сервера?


1-12359
tria
2004-02-25 14:21
2004.03.05
Не заходит отладчик в мой модуль


3-12243
Splinter
2004-02-09 15:50
2004.03.05
Объединение полей в Базе Данных


1-12324
Ads
2004-02-22 22:24
2004.03.05
DsgnIntf не найден в Delphi 7


1-12336
OlimPer
2004-02-21 14:36
2004.03.05
Опять ShellLIstView