原创 QLabel同時設置背景圖片和邊框遇到的問題

處理QLable時,遇到設置邊框,但是卻顯示不出來的問題。後來查看qss,發現設置背景圖片的地方有些是background-image,有些是border-image,從這個線索入手,發現QLabel設置的是border-image,所以

原创 QPushButton定製化按鈕

在項目中經常遇到需要高度定製的QPushButton,互斥性的QPushButton菜單便是其中一例。老手就不用看了,沒啥技術含量,希望能給新手點思路吧。再複雜的控件,也可以通過這種思路去構造。 效果圖如下: 基本需求就是鼠標三態(no

原创 obs obs_transform_info數據結構解析

今天端午節,中午烙了好久沒喫到的韭菜餡兒盒子,晚上嘗試自己包了糉子,雖然翻車了,還是挺開心的,啊,好睏~ obs中有obs_sceneitem_set_info函數用來設置場景項信息,這個轉換信息就是今天學習的這個數據結構。 官方幫助手冊

原创 QPogressBar樣式

1、跑馬燈QPogressBar 最終效果圖: 實現其實是兩個QProgressBar疊加在一起的效果 代碼裏設置 m_pProgress->setTextVisible(false); m_pProgress->setOrientat

原创 Qt qss控件樣式專欄

爲了方便以後查找Qt Widget控件的qss樣式,也是使用Qt GUI的一個總結,決定後續有時間整理一些已經開發過的控件的qss樣式。希望可以達到一個方便自己,惠及他人的一個目的。 首先可以通過Qt 幫助手冊搜索,Qt Style Sh

原创 Qt 雙滑塊QSlider的實現

在開發項目時,有需求要做雙滑塊的滑動條,本着能不造輪子就不造輪子的原則,去網上搜了一番,果然有Qt開源的拓展庫,Qt Extension Library,有一個控件是QxtSpanSlider,實現了簡單的雙滑塊,然而自定義了一些樣式後,

原创 Qt 蒙層QWidget大小變化時閃爍問題

程序有時候需要做蒙層,來凸顯當前需要關注的內容,多用於模態對話框的情況。 當蒙層覆蓋整個程序大小時,是最簡單的,簡單的控制show,hide就行了。然而有時候需要顯示尺寸不同的蒙層,這時候的模態也是假模態,有部分按鈕可以操作。 這種需求下

原创 Qt QButtonGroup 一些記錄

1、需求是這樣,把n個按鈕放入QButtonGroup中,可以不選,也可以只選中一個。QButtonGroup默認exclusive屬性爲true,即單選。那麼問題來了,如何做到一個也不選呢,當前情況即使再單擊選中的按鈕,狀態也不會變爲u

原创 Qt 頂層窗口設置圓角及陰影效果

頂層窗口由於沒有父窗口作爲依託,因此設置border-radius是無效的。我們可以爲控件添加一個透明的父窗口,來實現圓角以及四周的陰影效果。 最終demo的效果圖如下所示:   此窗口的源碼如下: Friends::Friends(

原创 select函數的用法

select函數用於在非阻塞中,當一個套接字或一組套接字有信號時通知你,系統提供select函數來實現多路複用輸入/輸出模型,原型: int select(int maxfd,fd_set *rdset,fd_set *wrset,fd_

原创 設置VS release模式下可調試

有三個步驟: 1、設置 C++ =>調試信息格式 =>程序數據庫 2、設置C++ => 優化 =>禁用 3、設置鏈接器 =>調試 =>生成調試信息 Done!

原创 Qt控件不能接收mousePress事件的原因

最近做的項目中,QWidget事件在經過軟件的一系列操作後,突然不能接受mousePress事件,經過一整天的排查才發現問題。本來以爲既然能接受mouseEnter和mouseLeave事件,那麼控件應該是enable的。 結果令人詫異,

原创 C++單繼承、多繼承、菱形繼承內存佈局(虛函數表結構)

原文鏈接:https://blog.csdn.net/SuLiJuan66/article/details/48897867 單繼承:只有一個基類和一個派生類 class

原创 qml使用QQuickWidget無法輸入中文問題解決

前段時間遇到QQuickWidget嵌入的qml中,文本輸入框無法輸入中文的問題。在同事的幫助下,解決此問題。方案如下: 1、QQuickWidget中創建 焦點變化 信號槽連接: connect(quickWindow(), &QQu

原创 Qt使用UAC權限

在做Qt應用程序時,有時會需要程序以管理員身份運行,Qt下的開發方法如下。 一、mingw編譯器環境 1、添加uac.manifest文件,文件內容如下:  <?xml version="1.0" encoding="UTF-8" st