組建全域支援到畫布應用程式中

Power Apps 是全域產品。 您可以組建與使用多種不同語言的畫布應用程式。

在建置和執行應用程式時,Power Apps 所顯示的文字已經翻譯成各種語言。 您會看到原生語言的功能表項目、對話方塊、功能區索引標籤與其他文字。 鍵入和顯示日期與數字也會根據您特定的語言和區域適應調整。 例如,世界的某些區域使用 (點或句點) 做為小數點分隔符號,而其他人使用 (逗點)。

您建立的應用程式也可以全域知悉。 請使用 LanguageTextValueDateValue 和其他函數適應調整顯示並作為不同語言輸入的內容。

語言設定

在使用母語工作室或母語播放程式時,使用的語言是由主機作業系統提供。 在 Windows 中,此設定可以在 [所有設定] > [時間與語言] 設定底下進行控制。 Windows 也可讓您指定小數分隔符號要使用的字元,以覆寫語言設定。

在使用 Web 體驗時,使用的語言由瀏覽器提供。 大部分瀏覽器會預設使用主機作業系統的設定,但有一些會提供方法讓您手動設定語言。

製作環境

製作環境會順應作者的語言設定。 應用程式本身以語言中立方式儲存,讓使用不同語言的作者可以編輯相同的應用程式。

公式中的名稱

公式中的大部分元素一律採用英文︰

  • 函式名稱︰IfNavigateCollect 等。
  • 控制項屬性名稱︰Screen.FillButton.OnSelectTextbox.Font 等。
  • 列舉名稱︰Color.AquaDataSourceInfo.MaxValueFontWeight.Bold 等。
  • 訊號記錄︰Compass.HeadingLocation. LatitudeApp.ActiveScreen 等。
  • 運算子:ParentinexactIn 等。

由於製作經驗會在地化,控制項和其他物件名稱將以作者的母語顯示。 某些控制項的西班牙文名稱會顯示為︰

西班牙文中的控制項名稱。

當您將上述其中一個控制項插入您的應用程式時,其名稱預設使用英文。 此變更是為了與控制項的屬性名稱和公式的其餘部分保持一致。 例如,上面列出的 Casilla 會插入為 Checkbox1

控制項插入後,您可以將其名稱變更為任何您喜歡的名稱。 選取後,[內容] 功能區的最左邊會顯示控制項的名稱。 選取此名稱可下拉出文字方塊供您編輯名稱︰

西班牙文經驗。

如有需要,您可以在這裡將控制項重新命名為 Casilla1。 此案例中的紅色曲線是由瀏覽器所顯示,原因是這個名稱不是西班牙文單字,所以沒什麼關係。

下列項目的名稱可隨您喜好命名︰

  • 控制項名稱
  • 集合物件名稱
  • 上下文變數名稱

公式分隔符號和鏈結運算子

某些 分隔符號和運算子 會隨作者語言的小數分隔符號變換︰

作者語言的小數分隔符號 Power Apps 小數分隔符號 Power Apps 清單分隔字元 Power Apps 鏈結運算子
. (點或句點) . (點或句點) (逗號) (分號)
(逗號) (逗號) (分號) ;; (雙分號)

Power Apps 清單分隔符號的變動會與 Excel 清單分隔符號一致。 它影響︰

  • 函數呼叫中的引數。
  • 記錄 中的欄位。
  • 資料表 中的記錄。

例如,下列是以點或句點作為小數點分隔符號的語言和地區 (例如日本或英國) 表達的公式:

Power Apps formula If open paren slider1 dot value greater than 12 dot 59 comma notify open paren double-quote Valid! double-quote comma success close paren semi-colon Navigate open paren double-quote NextScreen double-quote comma None close paren comma notify open paren double-quote Invalid, try again double-quote comma error close paren close paren。

現在以逗點用於小數點分隔符號的語言和地區來查看這個相同公式,例如法國或西班牙:

Power Apps formula If open paren slider1 dot value greater than 12 comma 59 semi-colon notify open paren double-quote Valid! double-quote semi-colon success close paren double semi-colon Navigate open paren double-quote NextScreen double-quote semi-colon None close paren semi-colon notify open paren double-quote Invalid, try again double-quote semi-colon error close paren close paren。

重點標示位置顯示兩個版本之間變動的運算子。 屬性選擇運算子 . (點或句點) 在 Slider1.Value 中永遠不變,無論小數分隔符號為何。

公式內部並不會改變,所改變的是其顯示方式和編寫者的編輯方式。 使用兩種不同語言的兩位不同作者可檢視和編輯相同公式,但兩位都會看到適用自身語言的分隔符號和運算子。

建立全域應用程式

您建立的應用程式會順應不同語言,為您在世界各地的使用者提供絕佳的使用者體驗。

語言函數

Language 函數傳回目前使用者慣用語言的語言標記。 例如,英國的使用者,此函數傳回 "en-GB",德國的使用者,此函數傳回 "de-DE"

此外您可以使用 Language 為您的使用者顯示翻譯過的文字。 您的應用程式可包括在您的應用程式所翻譯的值︰

含有當地語系化文字的表格。

然後使用下列公式從資料表中拉出已從資料表翻譯的字串︰

LookUp( Table1, TextID = "Hello" && (LanguageTag = Left( Language(), 2 ) || IsBlank( LanguageTag ))).LocalizedText

其他語言的翻譯字串可能會比您所用語言的字串長得多。 在許多情況下,於使用者介面中顯示字串的標籤和其他元素必須更寬才能容納得下。

如需詳細資訊,請參閱 Language 函數文件。

格式化數字、日期和時間

世界各地的數字、日期和時間會以不同格式書寫。 逗號、小數和月、日和年的順序會因位置不同而有不同意義。

Text 函數會使用使用者的語言設定來格式化數字和日期。

Text 需要格式化字串才能知道您要如何設定數字或日期的格式。 此格式化的字串可採用下列其中一種形式︰

  • 全域警覺列舉。 例如,Text( Now(), DateTimeFormat.LongDate )。 此公式以適當的語言格式進行目前日期的格式化。 此方法是比較好的格式字串指定方式。
  • 自訂格式化字串。 例如,Text( Now(), "[$-en-US]dddd, mmmm dd, yyyy" ) 用於 "en-US" 語言時,顯示和列舉相同的文字。 自訂格式字串的優點是您可以指定完全符合需求的字串。

自訂格式字串前方的 "[$-en-US]" 會對 Text 指出解讀自訂格式字串的語言。 此字串會自動插入,且預設使用您在編寫時所用的語言。 您通常不需要變更此字串。 當使用不同語言的編寫者在編輯相同的應用程式時,這會很有用。

Text 的第三個引數會指定函數結果所使用的語言。 預設值是目前使用者的語言設定。

如需詳細資訊,請參閱 Text 函數文件。

讀取數字、日期和時間

讀取使用者提供的數字、日期和時間共計 4 個函數︰

  • Value︰將文字字串中的數字轉換為數值。
  • DateValue:將文字字串中的日期值轉換為日期/時間值。 文字字串中指定的任何時間都會遭到忽略。
  • TimeValue:將文字字串中的時間值轉換為日期/時間值。 文字字串中指定的任何日期都會被忽略。
  • DateTimeValue:將文字字串中的日期和時間值轉換為日期/時間值。

如果您已使用 Excel,這些函數會全部結合成單一 Value 函數。 這些函式在這裡會分拆開來,因為 Power Apps 對於日期/時間值和數字有不同的類型。

這些函數全都具有相同的引數︰

  • String, required︰來自使用者的字串。 例如鍵入文字輸入控制項並使用 Tex 屬性從控制項讀取的字串。
  • Language, optional︰用來解讀 String 的語言。 預設值是使用者的語言設定。

例如:

  • Value( "12,345.678", "en-US" )Value( "12,345.678" ) 當位於使用者語言為 "en-US" 的地方時,傳回 12345.678 以便計算。
  • DateValue( "1/2/01", "es-ES" )DateValue( "1/2/01" ) 當位於使用者語言為 "es-ES" 的地方時,傳回日期/時間值 February 1, 2001 at midnight
  • TimeValue( "11:43:02", "fr-FR" )TimeValue( "11:43:02" ) 若位於使用者語言為 "fr-FR" 的地方,會傳回日期/時間值 January 1, 1970 at 11:43:02
  • DateTimeValue( "11:43:02 1/2/01", "de-DE" )DateTimeValue( "11:43:02 1/2/01" ) 若位於使用者語言為 "de-DE" 的地方,會傳回日期/時間值 February 1, 2001 at 11:43:02

如需詳細資訊,請參閱 ValueDateValue、TimeValue 和 DateTimeValue 函數及 處理日期和時間 的文件。

日曆和時鐘資訊

CalendarClock 函數提供使用者目前語言的日曆和時鐘資訊。

此外請使用這些函數提供下拉式選單控制項與選項清單。

如需詳細資訊,請參閱 CalendarClock 函數文件。

注意

是否能請您告知您偏好的慣用文件語言? 請填寫問卷。 (請注意,本問卷為英文版)

完成問卷大約需要七分鐘。 本問卷將不會收集個人資料 (隱私權聲明)。