PyQt挖地雷遊戲學習筆記(1)

2021-06-25 12:45:47 字數 703 閱讀 6421

想學會pyqt。按習慣做法,從分析學習程式設計例項著手。

從網上找了個「挖地雷」的原始碼,大卸八塊,仔細解剖,力圖學到些東西。

原程式中有bug,如:「棋盤」沒有下邊界線;挖出全部地雷後,程式沒反應,不認定獲勝。

我已將其鏟掉,可以正常執行了。

所做修改,都在game_scene.py。共有2處:

一是在函式checkwin()中,原文是:

if ((self.mine_map == self.flag_map).all() and

(self.mine_map != self.open_map).all()):

self.win()

現改為:

if (self.mine_map != self.open_map).all():

self.win()

修改後,程式可以自動正確判定勝利了。

二是在函式paintevent()中,原文是:

for i in range(y+1):

p.drawline(mx, my+i*sy, mx+x*sx, my+i*sy)

在其後增加一句:

p.drawline(mx, my+i*sy-1, mx+x*sx, my+i*sy-1)
現已可畫出棋盤底邊。

修改挖地雷遊戲的時間

前幾天warisa foolish一直在玩挖地雷,不亦樂乎!不過他們水平確實很高,想通過正常途徑超過他們估計這輩子不可能了,只能走歪門邪道了。今天晚上跟了20分鐘,哈哈終於被我跟出時間屬性的位址了,公布一下x0100579c,趕緊寫了個小東西。恩,果然如有神助,打敗了foolish與warisa 趕...

2019 7 9 校內測試 T1挖地雷

這一次是交流測試?邊交流邊測試 滑稽 這個題是乙個遞推問題。首先我們看第乙個格仔,因為它只影響了它的上面和右上面這兩個地方是否有雷。我們可以分3種情況討論 1.第乙個格仔的數字是2 2.第乙個格仔的數字是1 3.第乙個格仔的數字是0 顯然對於第1種情況和第3種情況,我們可以確定前兩個空的埋雷情況 第...

PyQt學習筆記 1 Hello World

pyqt是 python和 qt的繫結。我們知道,在 python中有很多 gui的庫,比如自帶的 tkinter,還有些更加強大的外部庫,比如 wxpython,pygtk,pyqt等等,其中 pyqt 是基於 qt的乙個 python gui庫,可以用於快速開發。qt是很高階的,它的庫提供了很多...