對於按鈕沒有setreadonly()的函式,但是可以換乙個思路:
我們可以通過遮蔽滑鼠事件來達到唯讀的操作。
比如這裡我用radio button當作控制燈,由另乙個push button來控制燈的開關。
給radio button(這裡命名為"light1")乙個屬性設定:
ui-
>light1-
>
setattribute
(qt::wa_transparentformouseevents, qiodevice::readonly)
;//設定按鈕遮蔽滑鼠事件,達到按鈕唯讀的目的
ui->light1-
>
setfocuspolicy
(qiodevice::readonly ? qt::nofocus : qt::strongfocus)
;//這裡當滑鼠放在light1上是沒有焦點策略的,只能通過clickbtn控制了
Qt滑鼠事件
1 滑鼠事件有哪些?預設如何觸發?查文件 查文件,注意mousemoveevent預設是滑鼠按下移動觸發,若要滑鼠移動直接觸發,則需要setmousetraching true 2 預設訊息響應是什麼?如何自定義響應?查文件 繼承過載 3 多個接收者,滑鼠事件預設接收者是誰?如何自定義接收者?缺省會...
Qt滑鼠事件總結
滑鼠按下事件void qwidget mousepressevent qmouseevent event elseif event button qt rightbutton elseif event button qt midbutton 滑鼠移動事件void qwidget mousemovee...
Qt的滑鼠事件
qt裡常用的滑鼠事件有mousepressevent mousemoveevent mousereleaseevent mousedoubleclickevent滑鼠事件方法。void mousepressevent qmouseevent e void mousemoveevent qmousee...