高仿花生殼客戶端程式
前言
設計的初想是在現場除錯的時候,使用花生殼進行遠程時,感覺類似花生殼這種程式的模板較為普遍,當時和同事打趣說一個星期內可以做出一摸一樣的界面,回到公司正好趕上離職,有時間想做一些東西,看到花生殼程式程式,瞬間想拿他用qt練手,于是三天時間仿制了該界面,
開發
基于QT5.12.10 MSVC2015 進行設計,目前只測驗過64位的編譯和運行,沒有進行詳細的測驗,僅供參考,
配色基本使用qss進行完成,包括影像的切換等,但是qss寫的時候比較散亂,都是在designer中直接進行書寫,一般會在要設定的控制元件的父元素中進行設定,部分直接在當前控制元件中進行設定,所以閱讀起來可能要自己找一下,如果有癖好的也可以把qss弄成全域的檔案進行讀寫,自由修改吧,小伙伴們!
下面介紹一下設計中的關鍵要點
-
無標題欄 無邊框
這個比較簡單,在主視窗的建構式中直接添加
setWindowFlags(Qt::FramelessWindowHint); setAttribute(Qt::WA_StyledBackground); -
自定義標題欄
這個需求目前也比較多,原理無非就是自己片段滑鼠的行為和可拖動的區域,通過重寫以下的函式完成設定區域的dragable的屬性
virtual void mousePressEvent(QMouseEvent *event); virtual void mouseReleaseEvent(QMouseEvent *event); virtual void mouseMoveEvent(QMouseEvent *event); -
tab按鈕的狀態保持
tab標簽按鈕這個是在做一個其他專案中遇到的,因為有幾個狀態的顯示問題,所以單純的使用qss無法完成,問題主要是在圖示和問題同時顯示并且要切換圖示 和 和點擊選擇以后維持狀態的問題,
我當時是寫了一個QToolPushButton的類進行狀態圖示的控制,使用qss完成文字等的狀態切換,如果大家有更好的方案,可以更改,
-
其他
該界面只是仿制向日葵程式的界面進行交流學習,界面的解釋和使用權歸該軟體的公司;
程式界面并非1:1還原,大小、顏色等有出入,
對于程式中使用的圖示都來自iconfont網站;
歡迎G友進行完善!!
Github:https://github.com/vvck/SunloginClient
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/273979.html
標籤:其他
