Если вы не знаете, является ли это логическим или числовым, то одним простым способом было бы привести значение к целому числу и проверить результат.Если это числовое или логическое значение, приведенное значение будет равно 1 \ 0 для .T..F.:
local llChecked
llChecked = ( cast(thisform.myCheckBox.Value as int) = 1 )
Хотя я бы не согласился, утверждает Дугалмак, значением флажка может быть символ.Я предполагаю, что это была опечатка и означало, что формат отображения логического значения может использоваться как символ (например, «Y», «N», «.T.», «.F.», «True» ...).Тогда то, что я сказал, остается в силе с небольшим изменением:
local llChecked
llChecked = cast(m.SomeValue as logical)
- Если это символ и один из форматов, которые можно преобразовать в логическом формате, то это будет истина, иначе ложь.
- Еслиэто числовое значение, тогда 0 будет ложным, а любое другое значение - истинным.
- Если это уже логично, то какое бы значение оно уже не имело.