Главная страница
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.02 c
1-37668
Catherin
2003-12-26 15:02
2004.01.13
text iz memo pri perenisenii v pis mo stanovitsja v odnu strochku


9-37487
NailMan
2003-06-21 12:25
2004.01.13
Конструкция ресурсного мэнеджера в 3Д-игре


1-37796
Ygy
2003-12-28 22:48
2004.01.13
Подправить DLL ку


14-37896
VID
2003-12-21 19:17
2004.01.13
Работаем с ApplicationEvents.OnMessage


1-37794
succer
2003-12-28 04:53
2004.01.13
Как переустановить модуль forms.pas