顯示具有 程式設計 標籤的文章。 顯示所有文章
顯示具有 程式設計 標籤的文章。 顯示所有文章

2019年3月12日 星期二

用VB程式語言設計"大家來找碴"小遊戲(3)

在前一文"用VB程式語言設計"大家來找碴"小遊戲(2)"用到語法:My.Computer.Audio.Play("..\..\Resources\音效檔名.副檔名")取代MsgBox("訊息內容"),令電腦播放音效,如下:

第二,修改程式碼,用音效取代提示訊息。
比較左右圖片,在右圖上每次以滑鼠點選不同處,就會發出"tada"音效(微軟舊作業系統音效),如果點錯,也會發出"uhoh"音效(ICQ音效)。

因為VB的預設路徑指向方案資料夾內的"debug"子資料夾,因此若將程式會用到所有的聲音檔(或圖形檔)直接存入debug資料夾內,則語法My.Computer.Audio.Play("..\..\Resources\音效檔名.副檔名")內標示底線處之路徑可以省略,只留完整檔名即可。
圖形檔一般都配合PictureBox顯示,其語法便可用:PictureBox1.Image = Image.FromFile("圖形檔名.副檔名")

此外,對於遊戲中已點選出不同處應該要有記號,來表示已經找到不同處,因此本文說明改善程式,以增加記號來標示不同處已找到...

<本文開始>----------------------------------------------
待續...

2019年2月28日 星期四

用VB程式語言設計"大家來找碴"小遊戲(2)

在前一文"用VB程式語言設計"大家來找碴"小遊戲(1)"用到語法:MsgBox("訊息內容"),來達成提示訊息的遊戲互動,如下:

第一,依據遊戲規則建立程式雛形(以下程式範例假設有5個不同處):
比較左右圖片,在右圖上每次以滑鼠點選不同處,就有提示找到訊息,如果點錯,也會提示答錯訊息。

但是遊戲如果沒有音效,就會少了趣味,因此本文說明修改程式,以音效取代提示訊息...

<本文開始>------------------------------------------------

第二,修改程式碼,用音效取代提示訊息。

比較左右圖片,在右圖上每次以滑鼠點選不同處,就會發出"tada"音效(微軟舊作業系統音效),如果點錯,也會發出"uhoh"音效(ICQ音效)


[程式撰寫]此處只用一種語法:My.Computer.Audio.Play("..\..\Resources\音效檔名.副檔名")取代MsgBox("訊息內容"),令電腦播放音效。

  1. 到網路下載"tada.wav"及"uhoh.wav"音效檔。
  2. 將音效檔複製到Resources資料夾內。
  3. 開啟程式碼編輯視窗,先在Label1程式碼區塊內的敘述"MsgBox("訊息內容")"末端,按Enter鍵,跳下一空白行輸入:My.Computer.Audio.Play("..\..\Resources\tada.wav")
  4. 再將Label1程式碼區塊內的敘述"MsgBox("訊息內容")"前端輸入'符號(半形單引號),讓該行敘述變成註解而無法執行。用註解取代刪除敘述,一方面可以呈現程式碼修改歷程,一方面也可以避免日後反悔而重寫。你會在程式碼編輯視窗看見以下內容,紅色標示表示你輸入的程式碼:
    Public Class Form1

        Private Sub Label1_Click(sender As Object, e As EventArgs) Handles Label1.ClicK
            'MsgBox("你找到了!")
            My.Computer.Audio.Play("..\..\Resources\tada.wav")
        End Sub
    End Class
  5. 重複3.及4.的作法,完成Label2~6的程式碼編輯。
  6. Label6是用來當作相同處,所以播放音效檔名改成uhoh.wav

............程式已經可以播放音效了,你可以按 ▶開始 玩玩看........................


2019年2月25日 星期一

用VB程式語言設計"大家來找碴"小遊戲(1)

本文藉由Visual Basic(VB)程式語言來設計"大家來找碴"的小遊戲,並分成幾個篇幅來模擬以初學者如何來逐步改良遊戲,區分篇幅用意其實表示任何程式都是經由一再修改,才會愈改愈好,沒有程式設計是一步登天的。
首先,你必須對Visual Basic這套軟體操作介面要有基本概念,不過會想讀下去應該對VB已經有基本概念...


第一,依據遊戲規則建立程式雛形(以下程式範例假設有5個不同處):

比較左右圖片,在右圖上每次以滑鼠點選不同處,就有提示找到訊息,如果點錯,也會提示答錯訊息


[表單設計]

  1. 設定表單背景圖:從網路上找人家已經設計好的左右對照圖片,當然也可以自己用影像處理軟體來做圖,但比較麻煩,找現成的就好,然後在Form1屬性BackgroundImage匯入作為專案資源檔。
  2. 置入6個標示:用Label1~5來標示5個不同處,再用Label6當作相同處。但是Label如同圖層概念,Label6會蓋住Label1~5,所以要將Label6移到最下層(按滑鼠右鍵設定),如此滑鼠才可以點到Label1~5。
  3. 調整標示大小:配合不同處大小調整Label1~5的尺寸(尺寸範圍表示滑鼠點選的作用區),不要重疊,然後調整Label6尺寸蓋住整個右圖,如下圖(本圖已將Label6屬性BackColor改為透明色以凸顯5個不同處)。
  4. 去除標示背景顏色:將Label1~6屬性BackColor改為透明色(Transparent,在下拉選單中間Web標籤第1項可以找到),如下圖。
  5. 清除Label1~6屬性Text的內容




[程式撰寫]此處只用一種語法:MsgBox("訊息內容"),令電腦提示訊息。

  1. 在Label1上用滑鼠點兩下,開啟程式碼編輯視窗,在游標處輸入:MsgBox("你找到了!"),你會在程式碼編輯視窗看見以下內容,紅色反白表示撰寫的程式碼:
    Public Class Form1

        Private Sub Label1_Click(sender As Object, e As EventArgs) Handles Label1.Click
            MsgBox("你找到了!")
        End Sub
    End Class

    註:上述程式碼表示~當你用滑鼠點一下Label1,程式提示"你找到了!"的訊息。
  2. 重複1.的作法,完成Label2~6的程式碼。
  3. Label6是用來當作相同處,所以提示訊息改成:MsgBox("你找錯了!")


............程式已經可以執行了,你可以按 ▶開始 玩玩看........................