04 例項大戰 QT總結

2022-05-16 02:40:39 字數 977 閱讀 7448

我這個qt菜逼,做的第乙個qt例項是電子教室狙擊手,原理如下:

1.結束電子教室學生端的程序;

2.刪除電子教室學生端exe檔案,避免電子教室自動恢復。

雖然是簡簡單單的乙個專案,但是涉及以下坑點:

1.刪除檔案時,qfile的remove函式中,絕對路徑裡的斜槓必須要是「/」!這裡折騰了兩個小時,下面是正確**。

qstring filepath = "

c:/program files/asiastar/mars8.1.exe

";

2.新增資源檔案時,如果想要的檔案沒有出現在左側欄,就要ctrl+s儲存一下專案,然後就有了。

3.打包exe過大的解決(未真正解決)

1.qt內release模式編譯一下;

2.把我的文件\編譯目錄\release裡的exe檔案拷貝到某一目錄(例如d:\demo);

3.用控制台qt輸入「cd /d d:\demo進入目錄

4.輸入命令列:windeployqt 程式名敲擊回車

5.用enigma virtual box:enter input file name輸入要打包的exe路徑,enter output file name生成的exe檔案路徑,預設情況下是輸入的exe路徑,files所有打包的檔案,進行打包

這種方法打包的exe檔案體積奇大無比,20kb的release程式能達到40mb+。我的方法是在第五步選擇壓縮,同時在確保程式正常執行的情況下刪掉一些dll檔案。

這樣檔案大小基本就能控制到9m左右。

《未完待續》

java專案之 坦克大戰 04

功能 讓坦克動起來 內容 改變位置,坦克就會動。a.設定成員變數,x y b.每一段時間重畫一次 y 5 c.重畫執行緒類。優點 執行緒重畫坦克,比較均勻。public class tankclient extends frame public void lauchframe this.setres...

設計模式之坦克大戰04

分為敵軍坦克,和自己坦克兩部分 public class resourcemgr catch ioexception e listexplodes new arraylist 然後在paint方法中 依次遍歷 如下 for int m 0 m調整 的位置 int ex tank.getx tank....

QT案例 飛機大戰(四)

步驟如下 建立heroplane類以及生成對應的檔案 和建立地圖的步驟一樣,這裡就不在詳細截圖了 建立好後生成heroplane.h 和 heroplane.cpp兩個檔案 在heroplane.h中新增 class heroplane 這裡飛機有個發射子彈的成員函式,由於我們還沒有做子彈 因此這個...