Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Ordinal type required


Автор: Victor 20.2.2004, 17:36
Код

procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
 Socket: TCustomWinSocket);
begin
if ServerSocket1.Socket.ReceiveText='1' then showmessage('1');
end;

Работает, а если
Код

procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
 Socket: TCustomWinSocket);
begin
case ServerSocket1.Socket.ReceiveText *Тут ошибка* of
'a':showmessage('a');
'b':showmessage('b');
end;
end;

ошибка сабж...=(
Почему??

Автор: Pakshin A. S. 20.2.2004, 20:31
В case только перечисляемые типы (Integer (и его производные), Char, свой тип). По-иоему так...

А какой тип у ReceiveText ?

Автор: <Spawn> 20.2.2004, 23:28
тут только так можно:

Код
case ServerSocket1.Socket.ReceiveText[1] of
'a':showmessage('a');
'b':showmessage('b');
end;

Автор: Cheba 21.2.2004, 10:53
Или через if
Код
if ServerSocket1.Socket.ReceiveText = 'a' then
 showmessage('a');
if ServerSocket1.Socket.ReceiveText = 'b' then
 showmessage('b');

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)