开始使用画布应用中的公式
为画布应用配置公式,不仅用于计算值和执行其他任务(与在 Excel 中的操作一样),还能(根据应用需求)响应用户输入。
- 在 Excel 中构建公式,例如,填充单元格并创建表和图表。
- 在 Power Apps 中,构建与配置控件(而不是单元格)时类似的公式。 此外,构建专门适用于应用(而非电子表格)的公式。
例如,构建公式以确定当用户选择按钮、调整滑块或提供其他输入时应用的响应方式。 这些公式可能会显示不同的屏幕、更新应用外部的数据源、或创建包含现有表中数据子集的表。
可将公式用于各种场景。 例如,可以使用设备的 GPS、地图控件以及使用 Location.Latitude 和 Location.Longitude 的公式,从而显示当前位置。 移动时,地图会自动跟踪您的位置。
本文仅提供使用公式的概述。 浏览公式参考了解更多详细信息以及可以使用的函数、运算符和其他构建基块的完整列表。
先决条件
使用 Power Fx 公式栏
Power Fx 公式栏为您的应用程序提供了更直观、更高效的公式书写方式。 按照这些步骤使用公式栏:
- 打开该应用以在 Power Apps Studio 中进行编辑。
- 选择屏幕顶部的公式栏,打开公式栏。
- 开始在栏中键入您的公式。 当您输入时,公式栏会提供与您的输入相匹配的函数建议。
- 继续键入公式或选择建议,直到完成为止。
显示值
在 Excel 中,可以输入数据的特定片段,例如编号 42 或短语 Hello World,方法是将这些内容键入到单元格。 该单元格显示的数据与您键入的数据完全相同。 同样,在 Power Apps 中,只需将标签的 Text 属性设置为想要使用的字符的精确序列(由双引号括住),即可指定数据的某个片段。
创建空白画布应用。
编辑栏位于屏幕顶部。
- 属性列表: 每个控件和屏幕都有组属性。 使用此列表选择特定属性。
- 公式:该属性的计算公式,由值、运算符和函数组成。 当您键入时,Intellisense 会提供有关公式、语法和错误的建议来帮助您。
- 选定的控件:在编辑栏中,可以查看并编辑所选控件的属性或屏幕的属性(若未选择任何控件)。
在屏幕中添加 标签 控件。
添加标签时,属性列表会自动显示用于控制控件显示内容的 Text 属性。 默认情况下,该属性的值是 "Text"。
将 Text 属性的值设置为 Hello World,方法是将双引号括住的字符串键入编辑栏:
在键入过程中,标签会反映此新值。 输入时,屏幕可能会显示黄色感叹号图标。 这些图标表示出错,但在输入有效值后会消失。 例如,如果字符串首尾没有双引号,则无效。
在 Excel 中,可以显示一个数字,如 42,方法是将其键入一个单元格或键入用于解析到该数字的公式,如 =SUM(30,12)。 在 Power Apps 中,可以将标签等控件的 Text 属性设置为 42 或 Sum(30,12),从而达到同样的效果。 无论工作表或应用程序中发生什么变化,单元格和标签都会显示该数字。
备注
在 Power Apps 中,并不在公式前使用等号或加号,这一点与在 Excel 中不同。 默认情况下,编辑栏将在该处键入的任何内容均视为一个公式。 此外,也不使用双引号 (") 将公式括起来(在之前的操作中使用它指定文本的字符串)。
在标签的 Text 属性中,将 Hello World 替换成 Sum(1,2,3)。
键入时,编辑栏会显示此函数的描述和预期参数,为您提供帮助。 就像“Hello World”中的最后一个双引号一样,屏幕上会显示一个红叉,表示出错,直到您键入该公式的最后一个括号。
添加最后括号的完整公式:
基于输入更改值
在 Excel 中,将 =A1+A2 键入到单元格,显示单元格 A1 和 A2 所包含的任何值的总和。 如果任一值或全部值发生更改,则包含公式的单元格将自动显示更新结果。
在 Power Apps 中,可通过在屏幕中添加控件并设置其属性实现类似结果。 此示例演示了一个名为 Label1 的标签控件和两个 文本输入 控件,名为 TextInput1 和 TextInput2。 您可以在 Label1 控件中添加公式,这样当您在 TextInput1 和 TextInput2 中输入数字时,它们就会相加并显示在 Label1 中。
无论在文本输入控件中输入什么数字,标签都会显示这些数字的总和,因为标签的 Text 属性被设置为这个公式:TextInput1.Text + TextInput2.Text
。
在 Excel 中,可以使用条件公式进行显示,例如,用红色显示负值。 在 Power Apps 中,不仅可以使用公式确定控件的主值,还可以使用公式确定颜色等属性。
在本例中,标签的 Color 属性的公式会自动将负值显示为红色。 If 函数看起来应该与 Excel 中的相似:
If( Value(Label1.Text) < 0, Color.Red, Color.Black )
基于用户输入更改颜色
可以通过公式配置应用,使用户能够更改应用的外观或行为。 例如,您可以创建一个筛选器,以仅显示包含用户指定的文本字符串的数据。 您可以允许用户根据数据集中的某个列对一组数据进行排序。
在本例中,用户可以通过调整一个或多个滑块来改变屏幕的颜色。
删除前面程序中的控件,或者像以前一样创建一个空白应用程序,然后添加三个滑块控件。 您可以在插入页面的搜索框中搜索滑块控件,在输入下找到该控件。 若要添加滑块,请将控件拖放到画布上。
排列滑块使其不重叠,添加三个标签,并将标签配置为显示红色、绿色和蓝色文本。
将每个滑块的 Max 属性设置为 255(默认值为 100),这是 RGBA 函数中颜色组件的最大值。
选择屏幕以取消选择任何控件,然后将屏幕的 Fill 属性设置为以下公式:RGBA( Slider1.Value, Slider2.Value, Slider3.Value, 1 )。 屏幕变为深灰色,这反映了滑块的当前位置。
在公式中,可以使用属性选择器访问控件属性。 例如,Slider1.Value 指向滑块的 Value 属性,该属性表示用户将滑块置于最小和最大值之间的位置。
预览应用程序并调整滑块。 您可以看到每个控件如何进行颜色编码以更改屏幕的背景颜色。
更改每个滑块时,包含 RGBA 函数的公式将重新计算,并立即更改屏幕显示的效果。
管理应用行为
使用公式不仅可以执行计算和更改外观,还可以执行操作。 例如,可以将某个按钮的 OnSelect 属性设置为包含 Navigate 函数的公式。 当用户选择该按钮时,将显示在该公式中指定的屏幕。
可以仅在行为公式中使用某些函数,例如 Navigate 和 Collect。 如果只能在此上下文中使用某个函数,则公式引用将进行调用。
如果使用分号 (;) 分隔函数,则可以在一个行为公式中执行多个操作。 例如,您可能想要更新上下文变量、将数据推送到数据源,并最终导航到其他屏幕。
按类别查看属性列表
属性列表按字母顺序显示属性,但您也可以按类别查看控件的所有属性。如果您选择一个控件,例如 Label1,然后在属性窗格中选择高级标签,就会看到该控件的一长串属性。
可以在此视图内直接编辑公式。 通过属性搜索,可以快速找到该控件的属性,并更改控件的行为和外观。
公式语法
在公示栏中键入公式时,不同的语法元素以不同的颜色显示,让用户更加轻松地进行查看并帮助理解长公式。 下面是 Power Apps 中的颜色代码列表。