diff --git a/Makefile b/Makefile
index 4f211e1..a020800 100755
--- a/Makefile
+++ b/Makefile
@@ -51,7 +51,7 @@ build:
 	cp -rv run-program-without-wayland.sh       new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/
 	cp -rv ProgramFen.py                        new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/
 	cp -rv Icon                                 new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/
-	python3 RemovePycacheFile.py                new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/
+	python3 RemovePycacheFile.py                #new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/
 	cp -rv new-deb-build /tmp/uengine-runner-builder
 	sudo chown -R root:root /tmp/uengine-runner-builder
 	dpkg -b /tmp/uengine-runner-builder com.gitee.uengine.runner.spark.deb
diff --git a/information.json b/information.json
index d7896b4..917b5b9 100755
--- a/information.json
+++ b/information.json
@@ -28,20 +28,22 @@
         "※2、修复 UEngine 安装器在 Wayland 下无法正常运行的问题;",
         "※3、更新 UEngine 安装器安装的 UEngine 版本;",
         "※4、修复 UEngine 安装器安装后的 UEngine 无法正常安装 APK 的问题(包括从运行器和 deb 包安装);",
-        "※5、UEngine 安装器支持安装使用 SuperSU Root 的镜像",
+        "※5、UEngine 安装器支持安装使用 SuperSU Root 的镜像;",
         "※6、UEngine 安装器安装后的 UEngine 支持开机后自动加载运行环境,无需人手动打开终端运行;",
-        "※7、放开原先程序内的程序安装量查询功能,并新增打开量查询功能(在程序的关于窗口里打开)",
-        "※8、程序更新时不需要关闭所有 Python3 程序,只会关闭自己",
-        "※9、新增彩蛋(只在2023年1月22日生效)",
-        "※10、修复 UEngine 打包器在部分系统无法打开的问题",
-        "※11、新增程序公告功能",
-        "※12、修复了程序更新功能从高版本降级到低版本的问题",
-        "※13、不强制依赖 Deepin 终端",
-        "14、更改程序论坛网址;",
-        "15、新增程序评分功能;",
-        "16、修复 UEngine 打包器在打包时无法正确禁用所有选项",
-        "17、UEngine 打包器打包的 deb 不再指定 deepin-elf-verify 依赖版本",
-        "18、“更多帮助”功能支持访问云端的帮助内容",
+        "※7、放开原先程序内的程序安装量查询功能,并新增打开量查询功能(在程序的关于窗口里打开);",
+        "※8、程序更新时不需要关闭所有 Python3 程序,只会关闭自己;",
+        "※9、新增彩蛋(只在2023年1月22日生效);",
+        "※10、修复 UEngine 打包器在部分系统无法打开的问题;",
+        "※11、新增程序公告功能;",
+        "※12、修复了程序更新功能从高版本降级到低版本的问题;",
+        "※13、不强制依赖 Deepin 终端;",
+        "※14、新增 UEngine 打包器(高级版);",
+        "15、更改程序论坛网址;",
+        "16、新增程序评分功能;",
+        "17、修复 UEngine 打包器在打包时无法正确禁用所有选项;",
+        "18、UEngine 打包器打包的 deb 不再指定 deepin-elf-verify 依赖版本;",
+        "19、“更多帮助”功能支持访问云端的帮助内容;",
+        "20、优化菜单栏分类,菜单栏新增图标。",
         "",
         "<b>V1.8.3:</b>",
         "※1、修复安装/打包程序时出现找不到图标的问题;",
diff --git a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/information.json b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/information.json
index d7896b4..917b5b9 100755
--- a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/information.json
+++ b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/information.json
@@ -28,20 +28,22 @@
         "※2、修复 UEngine 安装器在 Wayland 下无法正常运行的问题;",
         "※3、更新 UEngine 安装器安装的 UEngine 版本;",
         "※4、修复 UEngine 安装器安装后的 UEngine 无法正常安装 APK 的问题(包括从运行器和 deb 包安装);",
-        "※5、UEngine 安装器支持安装使用 SuperSU Root 的镜像",
+        "※5、UEngine 安装器支持安装使用 SuperSU Root 的镜像;",
         "※6、UEngine 安装器安装后的 UEngine 支持开机后自动加载运行环境,无需人手动打开终端运行;",
-        "※7、放开原先程序内的程序安装量查询功能,并新增打开量查询功能(在程序的关于窗口里打开)",
-        "※8、程序更新时不需要关闭所有 Python3 程序,只会关闭自己",
-        "※9、新增彩蛋(只在2023年1月22日生效)",
-        "※10、修复 UEngine 打包器在部分系统无法打开的问题",
-        "※11、新增程序公告功能",
-        "※12、修复了程序更新功能从高版本降级到低版本的问题",
-        "※13、不强制依赖 Deepin 终端",
-        "14、更改程序论坛网址;",
-        "15、新增程序评分功能;",
-        "16、修复 UEngine 打包器在打包时无法正确禁用所有选项",
-        "17、UEngine 打包器打包的 deb 不再指定 deepin-elf-verify 依赖版本",
-        "18、“更多帮助”功能支持访问云端的帮助内容",
+        "※7、放开原先程序内的程序安装量查询功能,并新增打开量查询功能(在程序的关于窗口里打开);",
+        "※8、程序更新时不需要关闭所有 Python3 程序,只会关闭自己;",
+        "※9、新增彩蛋(只在2023年1月22日生效);",
+        "※10、修复 UEngine 打包器在部分系统无法打开的问题;",
+        "※11、新增程序公告功能;",
+        "※12、修复了程序更新功能从高版本降级到低版本的问题;",
+        "※13、不强制依赖 Deepin 终端;",
+        "※14、新增 UEngine 打包器(高级版);",
+        "15、更改程序论坛网址;",
+        "16、新增程序评分功能;",
+        "17、修复 UEngine 打包器在打包时无法正确禁用所有选项;",
+        "18、UEngine 打包器打包的 deb 不再指定 deepin-elf-verify 依赖版本;",
+        "19、“更多帮助”功能支持访问云端的帮助内容;",
+        "20、优化菜单栏分类,菜单栏新增图标。",
         "",
         "<b>V1.8.3:</b>",
         "※1、修复安装/打包程序时出现找不到图标的问题;",
diff --git a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine-runner b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine-runner
index 1b388bb..cf9ec3b 100755
--- a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine-runner
+++ b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine-runner
@@ -1884,9 +1884,9 @@ adb = menu.addMenu(langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Name"])
 uengine = menu.addMenu(langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Name"])
 help = menu.addMenu(langFile[lang]["Main"]["MainWindow"]["Menu"][3]["Name"])
 
-cleanProgramHistory = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][0]["Menu"][0])
-settingWindow = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][0]["Menu"][2])
-exitProgram = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][0]["Menu"][1])
+cleanProgramHistory = QtWidgets.QAction(QtWidgets.QApplication.style().standardIcon(47), langFile[lang]["Main"]["MainWindow"]["Menu"][0]["Menu"][0])
+settingWindow = QtWidgets.QAction(QtGui.QIcon.fromTheme("settings"), langFile[lang]["Main"]["MainWindow"]["Menu"][0]["Menu"][2])
+exitProgram = QtWidgets.QAction(QtGui.QIcon.fromTheme("exit"), langFile[lang]["Main"]["MainWindow"]["Menu"][0]["Menu"][1])
 programmenu.addAction(cleanProgramHistory)
 programmenu.addAction(settingWindow)
 programmenu.addSeparator()
@@ -1901,11 +1901,11 @@ adbConnectDevice = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"
 adbChangeUengineDisplaySize = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][3])
 adbAndroidInstallAppList = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][4])
 adbTop = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][5])
-adbShell = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][6])
-adbScrcpyConnectUengine = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][7])
+adbShell = QtWidgets.QAction(QtGui.QIcon.fromTheme("terminal"), langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][6])
+adbScrcpyConnectUengine = QtWidgets.QAction(QtGui.QIcon.fromTheme("guiscrcpy"), langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][7])
 adb.addAction(adbUengineConnect)
 adb.addSeparator()
-adbServer = adb.addMenu(langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][1]["Name"])
+adbServer = adb.addMenu(QtGui.QIcon.fromTheme("services"), langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][1]["Name"])
 adb.addAction(adbConnectDevice)
 adb.addSeparator()
 adb.addAction(adbChangeUengineDisplaySize)
@@ -1914,13 +1914,13 @@ adb.addAction(adbTop)
 adb.addAction(adbShell)
 adb.addAction(adbScrcpyConnectUengine)
 adb.addSeparator()
-uengineUseAdbm = adb.addMenu(langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][8]["Name"])
-adbStartServer = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][1]["Menu"][0])
-adbStopServer = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][1]["Menu"][1])
-adbKillAdbProgress = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][1]["Menu"][2])
-uengineConnectAdb = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][8]["Menu"][0])
-uengineUseAdb = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][8]["Menu"][1])
-uengineDoNotUseAdb = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][8]["Menu"][2])
+uengineUseAdbm = adb.addMenu(QtGui.QIcon.fromTheme("services"), langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][8]["Name"])
+adbStartServer = QtWidgets.QAction(QtGui.QIcon.fromTheme("services"), langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][1]["Menu"][0])
+adbStopServer = QtWidgets.QAction(QtGui.QIcon.fromTheme("services"), langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][1]["Menu"][1])
+adbKillAdbProgress = QtWidgets.QAction(QtGui.QIcon.fromTheme("services"), langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][1]["Menu"][2])
+uengineConnectAdb = QtWidgets.QAction(QtGui.QIcon.fromTheme("services"), langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][8]["Menu"][0])
+uengineUseAdb = QtWidgets.QAction(QtGui.QIcon.fromTheme("services"), langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][8]["Menu"][1])
+uengineDoNotUseAdb = QtWidgets.QAction(QtGui.QIcon.fromTheme("services"), langFile[lang]["Main"]["MainWindow"]["Menu"][1]["Menu"][8]["Menu"][2])
 # 绑定信号
 uengineConnectAdb.triggered.connect(UengineConnectAdb)
 adbConnectDevice.triggered.connect(AdbConnectDeviceShow)
@@ -1954,7 +1954,7 @@ uengineOpenDebBuilderMore = QtWidgets.QAction(QtGui.QIcon.fromTheme("deb"), "UEn
 uengineKeyboardToMouse = QtWidgets.QAction(QtGui.QIcon.fromTheme("keyboard"), langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][7])
 uengineCheckCpu = QtWidgets.QAction(QtGui.QIcon.fromTheme("cpu"), langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][8])
 #uengineUbuntuInstall = QtWidgets.QAction(QtGui.QIcon.fromTheme("ubuntu-logo-icon"), langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][12])
-uengineDeleteUengineCheck = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][9])
+uengineDeleteUengineCheck = QtWidgets.QAction(QtWidgets.QApplication.style().standardIcon(40), langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][9])
 uengineReinstall = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][10])
 uengineUbuntuInstall = QtWidgets.QAction(QtGui.QIcon.fromTheme("ubuntu-logo-icon"), langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][14])
 uengineUbuntuInstallRoot = QtWidgets.QAction(QtGui.QIcon.fromTheme("ubuntu-logo-icon"), "在 Ubuntu 上安装 UEngine(SuperSU 镜像)")
@@ -1975,7 +1975,7 @@ uengine.addSeparator()
 uengineService = uengine.addMenu(QtGui.QIcon.fromTheme("services"), langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][2]["Name"])
 uengineInternet = uengine.addMenu(QtGui.QIcon.fromTheme("internet"), langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][3]["Name"])
 uengine.addSeparator()
-uengineIcon = uengine.addMenu(langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][4]["Name"])
+uengineIcon = uengine.addMenu(QtGui.QIcon.fromTheme("desktop"), langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][4]["Name"])
 uengine.addSeparator()
 uengine.addMenu(uengineUseAdbm)
 uengineData = uengine.addMenu(QtGui.QIcon.fromTheme("fileopen"), langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][6]["Name"])
@@ -2025,10 +2025,10 @@ uengineBridgeRestart.triggered.connect(UengineBridgeRestart)
 uengineBridgeReload.triggered.connect(UengineBridgeReload)
 uengineBridgeForceReload.triggered.connect(UengineBridgeForceReload)
 
-uengineSendUengineAndroidListForDesktop = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][4]["Menu"][0])
-uengineSendUengineAndroidListForLauncher = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][4]["Menu"][1])
-uengineAddNewUengineDesktopLink = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][4]["Menu"][2])
-uengineCleanAllUengineDesktopLink = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][4]["Menu"][3])
+uengineSendUengineAndroidListForDesktop = QtWidgets.QAction(QtGui.QIcon.fromTheme("desktop"), langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][4]["Menu"][0])
+uengineSendUengineAndroidListForLauncher = QtWidgets.QAction(QtGui.QIcon.fromTheme("desktop"), langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][4]["Menu"][1])
+uengineAddNewUengineDesktopLink = QtWidgets.QAction(QtGui.QIcon.fromTheme("desktop"), langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][4]["Menu"][2])
+uengineCleanAllUengineDesktopLink = QtWidgets.QAction(QtGui.QIcon.fromTheme("desktop"), langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][4]["Menu"][3])
 uengineIcon.addAction(uengineSendUengineAndroidListForDesktop)
 uengineIcon.addAction(uengineSendUengineAndroidListForLauncher)
 uengineIcon.addSeparator()
@@ -2067,10 +2067,10 @@ uengineInstallRootUengineImage.triggered.connect(InstallRootUengineImage)
 uengineBuildRootUengineImage.triggered.connect(BuildRootUengineImage)
 uengineReinstallUengineImage.triggered.connect(ReinstallUengineImage)
 
-helpOpenProgramUrl = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][3]["Menu"][0])
-makerWebsize = QtWidgets.QAction("作者个人站")
-helpForum = QtWidgets.QAction("程序论坛")
-uengineRunnerSearch = QtWidgets.QAction("查询指定程序在 UEngine 的运行情况")
+helpOpenProgramUrl = QtWidgets.QAction(QtWidgets.QApplication.style().standardIcon(20), langFile[lang]["Main"]["MainWindow"]["Menu"][3]["Menu"][0])
+makerWebsize = QtWidgets.QAction(QtWidgets.QApplication.style().standardIcon(20), "作者个人站")
+helpForum = QtWidgets.QAction(QtWidgets.QApplication.style().standardIcon(20), "程序论坛")
+uengineRunnerSearch = QtWidgets.QAction(QtWidgets.QApplication.style().standardIcon(20), "查询指定程序在 UEngine 的运行情况")
 helpUengineRunnerBugUpload = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][3]["Menu"][2])
 helpShowHelp = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][3]["Menu"][4])
 helpRunnerUpdate = QtWidgets.QAction(langFile[lang]["Main"]["MainWindow"]["Menu"][3]["Menu"][3])