Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Сравнение с типом данных Variant


Drashka ©   (2006-12-24 05:09:00) 

Господа, будьте добры, подскажите как сравнить данные типа Variant с символом . Конструкция выглядет примерно так..  if  priv = 's' then ...
где priv: variant. Пробовал if VarToStr(priv) = 's' then ..


Drashka   (2006-12-24 18:13:00) [1]

Ой блин :)
Скобки расставил не так.
Loginov Dmitry благодарю......


Loginov Dmitry   (2006-12-24 17:44:00) [2]

> ((user) = (k) and priv


жесть


Drashka   (2006-12-24 16:45:00) [3]

Гм, что-то я напутал. Вот вся процедура..
var
 k:variant;
 i:integer;
 log:variant ;
 user:variant;
 priv:variant;
 c:char;
begin
k:=sg1.cells[0,(arow)];

log:=VarArrayCreate([0,1], varVariant);

 For i:=1 to n do
 begin
  SDS1.RecNo:=i;
  Log:=SDS1['RDB$user;RDB$privilege'];
  priv:=Log[1];
  user:=Log[0];
  label3.caption:=priv;
   if ((user) = (k) and priv = 's') then
       begin
        cb1.Checked:=true;
       end;
 end;
end;

Sg1 это стринг грид
SDS симпл дата сет..
Эта программка для управления правами пользователей, данная процедура показывает какие на чекбоксе наличие права просмотра, но вот не получается  (user) = (k) and priv = 's'   [Error]  Incompatible types
Б


palva   (2006-12-24 10:23:00) [4]

А какие у вас трудности? Вот пробую на Turbo Delphi:

{$APPTYPE CONSOLE}
var
 priv: Variant;
 c: Char;
begin
 c := 's';
 priv := 's';
 if  priv = c then
   WriteLn('OK'); // OK
 if  priv = 's' then
   WriteLn('OK'); // OK
end.


Наверх

Титульная страница Поиск, карта сайта Написать письмо