【问题标题】:How to check if a bit is set in PowerApps?如何检查 PowerApps 中是否设置了位?
【发布时间】:2021-12-20 15:37:58
【问题描述】:

如何检查 PowerApp 中的整数值是否设置了特定位?似乎没有用于位操作的内置运算符或函数。

因为我在很少的操作中确实需要这个,所以使用外部/自定义连接器对我来说可能太昂贵了。

【问题讨论】:

    标签: powerapps bitflags


    【解决方案1】:

    要查找数字 val 的某个位 b 是否已设置,您可以使用如下表达式:

    RoundDown(Mod(val,Power(2,b+1))/Power(2,b),0)
    

    这个表达式的一个例子如下所示:

    【讨论】:

      【解决方案2】:

      公式

      Mod(Trunc(Number / (2 ^ Bit)), 2) = 1
      

      如果为值Number 设置了Bit 标志(从零开始计数),则此表达式将为true。否则false

      示例

      32 (00100000)

      Number = 32 Bit = 0 : false
      Number = 32 Bit = 4 : false
      Number = 32 Bit = 5 : true

      33 (00100001)

      Number = 33 Bit = 0 : true
      Number = 33 Bit = 4 : false
      Number = 33 Bit = 5 : true

      可重用性

      如果您打算在您的应用中经常使用它,您可能需要 register it as a custom function 以便于使用

      【讨论】:

        猜你喜欢
        • 2018-12-08
        • 2015-09-23
        • 2011-03-09
        • 1970-01-01
        • 1970-01-01
        • 2016-12-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多