PowerApps | ○×(まるばつ)クイズゲームを作ろう!

PowerApps | ○×(まるばつ)クイズゲームを作ろう!

今回は「○×クイズゲーム」をPowerAppsを使って作ります。

今回作成したいもの

画面遷移は以下のです。

① Start :スタートボタンを配置します。

② Quiz:クイズを表示します。

③Result:正解/不正解を表示します。

Quiz用データベース

今回はSharePointlistに「Quiz_list」を作成し、そこで問題の管理を行います。

・「Title」の名前を「Quiz」に変更しました。ここにクイズを記載します。

・正解ならば「1」、不正解ならば「0」とします。

構築手順

以下のステップで画面を構築します。

①データソースの選択

今回は「SharePointlist」からデータを取得するため、データソースの選択>SharePointを指定します。

右側に画面が表示されるので、対象のSharePointサイト>対象のリストを選択してください。

画面:Startの作成

Start画面に配置するコントロールは以下の通りです。

※ラベルは割愛しています。

OnSelect時に以下のコードを実行して画面遷移します。

Navigate(Quiz);

OnVisibleにて変数初期化

以下の変数を初期化します。

・Counter:クイズが今何問目かをカウントするための変数(初期値は1)

・ans:回答者の答えを格納するための変数(初期値は1)

Set(Counter,1);
Set(ans,1);

画面:Quizの作成

Start画面に配置するコントロールは以下の通りです。

Label1(テキストラベル):クイズが今何問目かを表示します。

Textプロパティに以下を記載します。

"Q" & Counter

Label2(テキストラベル):クイズを表示します。

Textプロパティに以下を記載します。

「Index(テーブル名,Indexの番号).取得したい列」で値を取得する事ができます。

※Indexの番号は1からです。

Index(Quiz_list,Counter).Title

○、×ボタン

OnSelectに以下を記載します。

・○をタップした場合

Set(ans,1);
Navigate(Result);

・×をタップした場合

Set(ans,0);
Navigate(Result);

画面:Resultの作成

Start画面に配置するコントロールは以下の通りです。

正解/不正解ラベル

正解/不正解に応じて、ラベル内のテキストを制御しています。

If(Index(Quiz_list,Counter).Answer=ans,"正解","不正解")

次へボタン(最終問題時のみ「Endボタン」)

次の問題へ遷移するためのボタンです。最終問題終了時のみ「End Quiz」となり、Start画面に遷移します。

・OnSelectは以下の通りです。

Set(Counter,Counter+1);
If(Counter<=Count(Quiz_list.ID),Navigate(Quiz),Navigate(Start))

・Textは以下の通りです。

If(Counter=Count(Quiz_list.ID),"End Quiz","Next Quiz")

最後に検証を実施

以上でクイズアプリが完成しました。

最後に検証をし、想定通りの動きになっているかを確認してください。

ではまた!

エラー: データの取得に失敗しました。