Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual foxpro 获取vfp中复选框的值_Visual Foxpro_Foxpro - Fatal编程技术网

Visual foxpro 获取vfp中复选框的值

Visual foxpro 获取vfp中复选框的值,visual-foxpro,foxpro,Visual Foxpro,Foxpro,标题说明了一切,我想获取复选框的值,无论它是数字还是字符,以便将其保存到表中 如果您不知道这是逻辑还是数字,那么一个简单的方法是将值转换为整数并检查结果。如果是数字或逻辑,则.T..F的强制转换值为1\0: local llChecked llChecked = ( cast(thisform.myCheckBox.Value as int) = 1 ) Dhugalmac声称,虽然我不同意,但复选框值可以是一个字符。我假设这是一个输入错误,意味着逻辑值的显示格式可以用作字符(如“Y”、“N”

标题说明了一切,我想获取复选框的值,无论它是数字还是字符,以便将其保存到表中

如果您不知道这是逻辑还是数字,那么一个简单的方法是将值转换为整数并检查结果。如果是数字或逻辑,则.T..F的强制转换值为1\0:

local llChecked
llChecked = ( cast(thisform.myCheckBox.Value as int) = 1 )
Dhugalmac声称,虽然我不同意,但复选框值可以是一个字符。我假设这是一个输入错误,意味着逻辑值的显示格式可以用作字符(如“Y”、“N”、“T”、“F”、“true”…)。那么我所说的仍然有效,只是有一点变化:

local llChecked
llChecked = cast(m.SomeValue as logical)
  • 如果它是字符和logical的可转换格式之一,那么它将是true,否则为false
  • 如果它是数字,那么0将为false,而任何其他值都为true
  • 如果它已经是逻辑的,那么不管它已经有什么值

Cetin-“复选框值是数字或逻辑的”
如果您正在检查检查本身,则这是正确的,但如果用户只是将检查用作网格中一个或多个值的选择器,则所选的值可能不同。
Arnold-将该值读入内存变量,然后检查该值的TYPE()

DO CASE
   CASE TYPE('readvalue') = "C"  && Character  
      <do whatever>
   CASE TYPE('readvalue') $ "I,N"  && Integer or Numeric
      <do whatever>
ENDCASE
DO CASE
大小写类型('readvalue')=“C”&字符
大小写类型('readvalue')$“I,N”&&整数或数字
尾声

祝您好运

您可以在属性窗口中设置要在检查值属性中存储的值的类型,如果要存储数值,请执行此操作,请参见图: 然后您可以得到如下值:

local nCheckVal as int
nCheckVal=thisform.check.value
local lCheckVal as logical
lCheckVal=thisform.check1.value
如果要存储逻辑值,请执行以下操作: 然后您可以得到如下值:

local nCheckVal as int
nCheckVal=thisform.check.value
local lCheckVal as logical
lCheckVal=thisform.check1.value

希望对您有所帮助。

复选框值可以是数字的,也可以是逻辑的。您的意思是什么?你能告诉我这怎么不是“真的”并且复选框值可以是代码中的字符吗。我说过,如果支票用作网格中的行选择器,那么网格的其他字段(不是支票)可能是任何类型的字段。因此,如果用户在网格中扫描以查找选中的行,那么他们可能希望读取其其他关联字段的值。@Dhugalmac,那么我认为您没有阅读OP的问题或我的答案。OP清楚地说“复选框”,我说“复选框…”。在网格中,敏感类型也是逻辑的。