QT 利用事件過濾器 在Label上繪制矩形框 超出邊界則繪制失敗 實際效果參考
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIyVGduV2YfNWawNCM38FdsYkRGZkRG9lcvx2bjxiNx8VZ6l2cs0TPR10MBpmTzEFVPpHOsJGcohVYsR2MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49DctJmL5ITO4MTMwgTMxIzNwAjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.bmp)
還有一種方法是通過得到圖檔的絕對位置,視窗的絕對位置,然後計算圖檔的相對位置。兩種方法都能達到同樣的效果,但是我覺得這種更好,主要是重寫label (顯示圖檔的那個label),對自己的label注冊事件過濾器,如果你對視窗注冊事件過濾器,并沒有用。想要在圖檔上顯示矩形,一定要重寫paintEvent,否在感覺是在圖檔下面被遮擋了一樣。如果不想自己寫, https://download.csdn.net/download/weixin_39476071/12647563 是完整的實作