打造 UI-3
善用快速鍵, 結合WorkFolder物件, 加速標示效率
前篇用最快速的 '&' + 字母, 讓 QPushButton 具備快速鍵 Alt+字母 的能力, 但如果要直接按字母就能達到按下 QPushButton 一樣能力, 我們必須用 QShortcut. 我們用 classifiedBtn.setShortcut(id) 讓按下 id (亦即 1/2/.. 字母) 取代原先必須按下 Alt+1 (2/3/...)
同時我們也將按鈕群綁到 classifiedTo 這個方法, 只傳遞 object 給classifiedTo, 以 cls_group.id(object) 比對是哪個 QPushButton 的 id 觸發此方法, 另外用 self.keys 來紀錄的某個Button對應的分類代碼. 然後用 workFolder.labelCurrentImg(self.keys[clsId]) 進行分類標示, 亦即將現在畫面的圖像搬移到對應類別子目錄下.
畫面必須更新成下一個圖像, 我們呼叫 self.parent.imgLabel.refreshImg() 來達成, 這有點取巧, 比較正式的作法要拋出一個事件給父層物件來處理. 不過我們先達到目標就好, 先求有, 邊做邊完善的進行重構, refactor.
另外我們用 self.checkCurrentImg() 確認畫面上是否有需要標示圖像, 如果沒有就 disable 所有分類按鈕.