@@ -23,7 +23,7 @@ def __init__(self, MainWindow, args):
2323 super (MineSweeperGUI , self ).__init__ (MainWindow , args )
2424 # MineSweeperGUI父类的init中读.ini、读图片、设置字体、局面初始化等
2525
26- self .operationStream = []
26+ # self.operationStream = []
2727
2828 self .time_10ms : int = 0 # 已毫秒为单位的游戏时间,全局统一的
2929 self .showTime (self .time_10ms // 100 )
@@ -103,6 +103,35 @@ def __init__(self, MainWindow, args):
103103
104104 self .mainWindow .closeEvent_ .connect (self .closeEvent_ )
105105
106+ @property
107+ def pixSize (self ):
108+ return self ._pixSize
109+
110+ @pixSize .setter
111+ def pixSize (self , pixSize ):
112+ pixSize = max (5 , pixSize )
113+ if pixSize == self ._pixSize :
114+ return
115+ self .label .set_rcp (self .row , self .column , pixSize )
116+ self .label .reloadCellPic (pixSize )
117+ for i in range (4 ):
118+ self .predefinedBoardPara [i ]['pix_size' ] = pixSize
119+ self .reimportLEDPic (pixSize )
120+ self .label .setMinimumSize (QtCore .QSize (pixSize * self .column + 8 , pixSize * self .row + 8 ))
121+ self .label .setMaximumSize (QtCore .QSize (pixSize * self .column + 8 , pixSize * self .row + 8 ))
122+ # self.label.setFixedSize(QtCore.QSize(self.pixSize*self.column + 8, self.pixSize*self.row + 8))
123+
124+ self .label_2 .reloadFace (pixSize )
125+ self .set_face (14 )
126+ self .showMineNum (self .mineUnFlagedNum )
127+ self .showTime (0 )
128+ if pixSize < self ._pixSize :
129+ self ._pixSize = pixSize
130+ self .minimumWindow ()
131+ else :
132+ self ._pixSize = pixSize
133+
134+
106135 @property
107136 def gameMode (self ):
108137 return self ._game_mode
@@ -348,47 +377,9 @@ def resizeWheel(self, i, x, y):
348377 if QApplication .keyboardModifiers () == Qt .ControlModifier and self .game_state == 'ready' : # 检测是否按ctrl
349378 if i > 0 :
350379 self .pixSize += 1
351- self .label .set_rcp (self .row , self .column , self .pixSize )
352- self .label .reloadCellPic (self .pixSize )
353- for i in range (4 ):
354- self .predefinedBoardPara [i ]['pix_size' ] = self .pixSize
355- self .reimportLEDPic (self .pixSize )
356- # self.label.ms_board.pix_size = self.pixSize
357- self .label .setMinimumSize (QtCore .QSize (self .pixSize * self .column + 8 , self .pixSize * self .row + 8 ))
358- self .label .setMaximumSize (QtCore .QSize (self .pixSize * self .column + 8 , self .pixSize * self .row + 8 ))
359- self .label_2 .reloadFace (self .pixSize )
360- self .set_face (14 )
361- # pixmap = QPixmap(self.pixmapNum[14])
362- # self.label_2.setPixmap(pixmap)
363- # self.label_2.setScaledContents(True)
364- self .showMineNum (self .mineUnFlagedNum )
365- self .showTime (0 )
366- # self.label.resize(QtCore.QSize(self.pixSize * self.column + 8, self.pixSize * self.row + 8))
367380 elif i < 0 :
368381 self .pixSize -= 1
369- self .pixSize = max (5 , self .pixSize )
370- self .label .set_rcp (self .row , self .column , self .pixSize )
371- self .label .reloadCellPic (self .pixSize )
372- for i in range (4 ):
373- self .predefinedBoardPara [i ]['pix_size' ] = self .pixSize
374- self .reimportLEDPic (self .pixSize )
375- # self.label.ms_board.pix_size = self.pixSize
376- self .label .setMinimumSize (QtCore .QSize (self .pixSize * self .column + 8 , self .pixSize * self .row + 8 ))
377- self .label .setMaximumSize (QtCore .QSize (self .pixSize * self .column + 8 , self .pixSize * self .row + 8 ))
378- self .label_2 .reloadFace (self .pixSize )
379- self .set_face (14 )
380- # pixmap = QPixmap(self.pixmapNum[14])
381- # self.label_2.setPixmap(pixmap)
382- # self.label_2.setScaledContents(True)
383- self .showMineNum (self .mineUnFlagedNum )
384- self .showTime (0 )
385-
386- self .minimumWindow ()
387- # 这个哪里用了???延时后缩紧
388- self .timer_save_size = QTimer ()
389- # self.timer_save_size.timeout.connect(self.refreshSettingsDefault)
390- self .timer_save_size .setSingleShot (True )
391- self .timer_save_size .start (500 )
382+
392383 elif self .game_state == 'study' :
393384 if x < 0 or x >= self .row or y < 0 or y >= self .column :
394385 return
@@ -438,20 +429,9 @@ def gameStart(self):
438429 self .showTime (self .time_10ms )
439430 self .timer_10ms .stop ()
440431 self .score_board_manager .editing_row = - 1
441- self .operationStream = [] # 记录整局的鼠标操作流,格式例如[('l1',(x,y)),('r1',(x,y)),('c2',(x,y))]
442432
443433 self .label .paintPossibility = False
444- # self.label.paint_cursor = False
445- # self.label.setMouseTracking(False) # 鼠标未按下时,组织移动事件回调
446-
447- # if self.game_state == 'display':
448- # self.timer_video.stop()
449- # self.ui_video_control.QWidget.close()
450- # elif self.game_state == 'study':
451- # self.num_bar_ui.QWidget.close()
452434 self .label_info .setText (self .player_designator )
453- # elif self.game_state == 'show':
454- # self.label.setMouseTracking(False)
455435
456436 # 这里有点乱
457437 if self .game_state == 'display' or self .game_state == 'showdisplay' :
@@ -1052,7 +1032,7 @@ def refreshSettingsDefault(self):
10521032 # 刷新游戏设置.ini里默认部分的设置,与当前游戏里一致,
10531033 # 除了transparency、mainwintop和mainwinleft
10541034 conf = configparser .ConfigParser ()
1055- conf .read (self .game_setting_path )
1035+ conf .read (self .game_setting_path , encoding = 'utf-8' )
10561036 conf .set ("DEFAULT" , "gamemode" , str (self .gameMode ))
10571037 conf .set ("DEFAULT" , "pixsize" , str (self .pixSize ))
10581038 conf .set ("DEFAULT" , "row" , str (self .row ))
@@ -1240,7 +1220,7 @@ def closeEvent_(self):
12401220 conf .write (open (self .game_setting_path , "w" , encoding = 'utf-8' ))
12411221
12421222 conf = configparser .ConfigParser ()
1243- conf .read (self .record_path )
1223+ conf .read (self .record_path , encoding = 'utf-8' )
12441224 for key_name in self .record_key_name_list :
12451225 conf [key_name ] = self .record [key_name ]
12461226 # conf["BFLAG"] = self.record["BFLAG"]
0 commit comments