<source : unsplash>

一、需求說明


當按下 " +1 ",數字顯示器就 "加1"。
當按下 " -1 ",數字顯示器就 "減1"。
當按下 " Reset ",數字顯示器就 "歸零"。
當按下 " STOP ",數字顯示器就 "停止"。


二、做法解說

依據需求說明,總共有 4 種情境,預想用 "Event Structure"來實現。

Step 1. 在人機介面中,建立所需物件。

物件如下 :

1.按鈕 "+ 1" 、 "-1"、"STOP" 、"Reset"。







2.數值顯示畫面。










Step 2. 在程式撰寫介面,建立 1 個Event Structure。

如下圖紅1,選取 "Event Structure"的方塊,並如下圖紅2,拉出一個 Event Structure 的方塊。 

Step 3. 依序將各個事件的程式碼寫入 Event Structure中。

Event 撰寫順序依序為 : "+1" 、"-1" 、 "Reset"。

Event 1 : +1

在 "Timeout區塊"右邊的小三角形,按右鍵,點選  "Add Event Case"。如下圖。
 





















在第二欄 "Event Sources"欄位中的"Controls"位置,點選 "+1",接著按右下角的 "OK"按鈕。如下圖所示。



















完成上一步後,檢視事件框是否為 "+1 : Value Change",若是,則繼續撰寫程式碼。將剛成建立的 "+1"按鈕拉進 Event Structure的方塊中。

因為點擊要加一,也就是原來的值會改變,因此可以透過建立 local variable 的方式來實現。作法為建立 2 個 Current Value 的 local variable,然後在"+1"的三角形圖案前後拉線。完成畫面如下圖。 















Event 2 : -1

步驟程序同加一,在事件名稱右邊的小三角形,按右鍵,點選  "Add Event Case"。在第二欄 "Event Sources"欄位中的"Controls"位置,點選 "-1",接著按右下角的 "OK"按鈕。如下圖所示。



















完成上一步後,檢視事件框是否為 "-1 : Value Change",若是,則繼續撰寫程式碼。將剛成建立的 "-1"按鈕拉進 Event Structure的方塊中。

因為點擊要減一,也就是原來的值會改變,因此可以透過建立 local variable 的方式來實現。作法為建立 2 個 Current Value 的 local variable,然後在"-1"的三角形圖案前後拉線。完成畫面如下圖。














Event 3 : Reset

步驟程序同加一,在事件名稱右邊的小三角形,按右鍵,點選  "Add Event Case"。在第二欄 "Event Sources"欄位中的"Controls"位置,點選 "Reset",接著按右下角的 "OK"按鈕。如下圖所示。



完成上一步後,檢視事件框是否為 "Reset : Value Change",若是,則繼續撰寫程式碼。將剛成建立的 "-1"按鈕拉進 Event Structure的方塊中。

因為點擊要歸零,也就是原來的值減去原來的值,因此可以透過建立 local variable 的方式來實現。作法為建立 2 個 Current Value 的 local variable,然後在"-"的三角形圖案前後拉線。完成畫面如下圖。








Event 4 : STOP

直接對紅點按右鍵選取 "create control",即完成。最後設定秒數,即完成本次設計,如下圖。按下執行的按鈕就可以開始測試自己撰寫的成果喔!









0 留言