![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Сравнение с типом данных 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.