QT Labe中l實現雙擊全屏顯示畫面

2021-08-24 23:36:54 字數 580 閱讀 9317

上節總結了usb攝像頭在label上的顯示問題,今天我們想要實現的是在label控制項上雙擊實現全屏的畫面顯示,再次雙擊退出全屏。

本次實現的基本原理是利用事件過濾器eventfilter。直接貼**

首先需要在建構函式中為label安裝事件過濾器

ui.u1->installeventfilter(this);
當然重寫事件過濾器需要在標頭檔案中宣告,下面為重寫的事件過濾器部分。

else

;} return qobject::eventfilter(obj, event); }}

攝像頭顯示部分就不再貼出了,主要還是定時器的使用,下面放出兩張結果圖:

初始情況下:

在label中雙擊全屏顯示

總結:當我們需要對某乙個控制項響應滑鼠或者鍵盤事件的時候可以充分發揮事件過濾器的作用!

MFC中CSTATIC控制項雙擊全屏 雙擊恢復

雙擊全屏方法有兩種 1.雙擊放大的時候調static控制項的父控制代碼serparent讓控制項的父控制代碼變成桌面,然後再提取桌面的解析度用movewindow或者setwindowpos改變控制項大小.恢復成原來的大小時把父控制代碼設定成對話方塊.2.雙擊放大時調整對話方塊的大小,先把對話方塊變...

QT 實現QTableView中,雙擊彈出下拉框

qtableview顯示資料時,雙擊 預設情況下是顯示spin控制項,但很多情況下需要顯示combobox,這需要為tableview增加combox combox 標頭檔案 pragma once comboboxdelegate.h include class combodelegate pub...

在VC中實現全屏視窗程式

原文http tech.ddvip.com 2008 12 1230262679103110.html 全屏顯示是一些應用軟體必不可少的功能。比如在用vc 編輯工程原始檔或編輯對話方塊等資源時,選擇選單 viewfull screen 即可進入全屏顯示狀態,按 esc 鍵後會退出全屏顯示狀態。1 在...