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

Вниз

case of не работает для строк   Найти похожие ветки 

 
Kuku   (2003-12-30 00:38) [0]


var MyString: Stringl

begin

MyString:=Edit1.Text;

case MyString of
"OK": Edit2.Text:="Хорошо";
"Bad": Edit2.Text:="Плохо";

end;


При попытке скомпилировать курсор переходит к строке с case и говорит - ordinal type required.
В чём проблема????


 
Pat ©   (2003-12-30 00:55) [1]

Теперь берем переводчик и переводим "ordinal type required". Получится что-то вроде "требуется перечисляемый тип переменной" (ну это мой адаптированный перевод :-)) Далее грузим Delphi help и смотрим топик ordinal types


 
Германн ©   (2003-12-30 01:09) [2]

Поскольку по приведенному примеру значения строк вводимых в Edit1 известны уже на этапе компилляции, то можно посоветовать загрузить все варианты таких строк в StringList. Тогда в последствии можно будет сделать так:

case StringList.IndexOf(Edit1.Text) of

Хотя, впрочем, при вышеописанном условии отпадет и всякая необходимость в операторе case. Достаточно будет:

Edit2.Text:=StringList2.Strings[StringList1.IndexOf(Edit1.Text)]



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

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

Наверх




Память: 0.47 MB
Время: 0.021 c
4-37987
Дремучий
2003-11-10 20:00
2004.01.13
Горячие клавиши! Глобально. Для операционки.


14-37873
Альф
2003-12-22 12:23
2004.01.13
Насколько требовательны работодатели к регистрации и гражданству


14-37887
Rouse_
2003-12-23 12:15
2004.01.13
Не могу определить источник неполадок с изображением в DOS MODE


1-37644
Hyboid
2003-12-25 19:12
2004.01.13
DLL Strings


3-37525
Ю.Ф.
2003-12-16 15:18
2004.01.13
Упаковка БД типа Парадокс или FoxPro