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

Вниз

Функция Case ... of   Найти похожие ветки 

 
Danco ©   (2009-12-09 13:53) [0]

Обьясните мне лбди почему не работает?

var
s: String;
begin
case s of
 "Привет": ShowMessage("Сообщение "Привет"");
 "Пока": ShowMessage("Сообщение "Пока"");
 "Здрасть": ShowMessage("Сообщение "Здрасть"");
end;
end;


 
Медвежонок Пятачок ©   (2009-12-09 13:54) [1]

не работает потому что не должна работать.


 
Медвежонок Пятачок ©   (2009-12-09 13:56) [2]

а не должна работать потому что тип не простой перечислимый


 
MBo ©   (2009-12-09 13:56) [3]

в хелпе же написано, каких типов может быть селектор


 
Б   (2009-12-09 13:57) [4]

S - не тот.
Проверь через else в Case.


 
Б   (2009-12-09 13:59) [5]

Я ошибся. Пошёл читать хелп.


 
Danco ©   (2009-12-09 14:01) [6]

Спасибо :)


 
Ганя   (2009-12-09 14:50) [7]

для случая со строками, чтобы не писать кучу if-ов можно написать ytre. функцию, которая на вход принимает строку и массив строк-вариантов ответа, а результатом возвращает идекс.
Тогда результирующий код будет выглядеть приблизительно так:

var
s: String;
begin
case IndexOfString(s, ["Привет", "Пока", "Здрасть"] of
0: ShowMessage("Сообщение "Привет"");
1: ShowMessage("Сообщение "Пока"");
2: ShowMessage("Сообщение "Здрасть"");
end;
end;


 
Danco ©   (2009-12-10 10:18) [8]


> Ганя


Спасибо, есть на свете умные люди :)



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

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

Наверх




Память: 0.48 MB
Время: 0.012 c
15-1259084165
Anatoly Podgoretsky
2009-11-24 20:36
2010.01.31
Анонс статьи


6-1211959699
Igor_34
2008-05-28 11:28
2010.01.31
Как узнать пользователя


2-1260359848
mefodiy
2009-12-09 14:57
2010.01.31
Копирование прикрепленных файлов в Microsoft Outlook


1-1229112643
ivak
2008-12-12 23:10
2010.01.31
Собственный курсор


4-1227702513
dmitry_12_08_73
2008-11-26 15:28
2010.01.31
Приветствую, как определить, пересекаются ли два прямоугольника