一、歷史對比
關于QCPLayoutElement這個元素的講解之前,我想先對1.3.2release版本和2.0.0beta版本的該元素做以簡單的對比介紹,首先,1.3.2release版本時,鼠標單擊時,如果按下的位置是一個布局元素,那么QCustomPlot首先會把這個事件回調給該被點擊的元素,并且mouse系列的方法都是這樣傳遞給QCPLayoutElement對象,該布局元素的聲明會像這樣QPointer<QCPLayoutElement> mMouseEventElement;但是到了2.0.0beta版本時,QCustomPlot源碼做出了很大的調整,不僅僅是QCPLayoutElement布局元素可以接收鼠標事件,凡事繼承自QCPLayerable類的元素都可以支持鼠標事件,因為mouse一系列的方法被移到了QCPLayerable類中。下面我分別貼出這兩個版本時的mousePressEvent處理方法
1.3.2release版本鼠標按下處理方式
1 void QCustomPlot::mousePressEvent(QMouseEvent *event) 2 { 3 emit mousePress(