Главная страница
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.013 c
4-37989
stas kalishenko
2003-10-30 18:49
2004.01.13
Сервис и Novell-овский сетевой диск


1-37646
MadAngel
2003-12-26 19:50
2004.01.13
Картинки в TreeView


1-37742
Ego
2003-12-30 08:27
2004.01.13
Вставить фрейм


6-37831
Cerber
2003-11-10 20:55
2004.01.13
Wininet


1-37753
Мыш
2003-12-29 23:33
2004.01.13
сохранить настройки