1. 程式人生 > 其它 >NX二次開發-MFC對話方塊自己重繪Button控制元件(提升美觀度)

NX二次開發-MFC對話方塊自己重繪Button控制元件(提升美觀度)

  • 文章討論主題

MFC控制元件的重繪

在做NX二次開發的時候,我們有時會用到MFC對話方塊,去做介面,但是 MFC介面很醜(畢竟是上個世紀90年代的東西了,已經被時代拋棄了),所以導致很多人不願意用。

面對介面醜的問題,我們可以自己重繪介面,重繪控制元件。來解決這個問題。

 

  • 原始的普普通通,醜的button控制元件風格,展示

 

  • 1.自己寫程式碼重繪button控制元件

後面在講

 

 

  • 2.去codeproject網站上下載開源控制元件類,呼叫別人封裝好的程式碼

https://www.codeproject.com/

登入進來之後,去搜索框裡搜button,因為是國外網站所以搜尋很慢,還有建議用QQ瀏覽器去用,谷歌和火狐瀏覽器好像有的時候顯示有問題,還有 要自己註冊個賬戶 ,為後面下載用。

 

 

搜出來的一堆中,樣式有很多,程式碼有VC的 也有 .net的,這裡我們選擇 VC的來下載。

 

 點選去   https://www.codeproject.com/Articles/67/Round-Buttons-2

有關程式碼介紹,和下載的 Demo和原始碼 點下面。

 

 下載下來結果如下

 

 不知道怎麼使用就去看,它的demo例子。

知道怎麼使用,就直接拿src裡面 封裝好的hpp 和 cpp

 

 

  •  在我們的NX二次開發專案裡,呼叫 開源控制元件

1.在介面上在重新拖一個button控制元件過來

 

 2.為控制元件繫結一個變數

 

 

自己把這個按鈕拖大一點

 3.把網上下的開源控制元件程式碼hpp 和 cpp加到我們的專案中來

 

 把#include "RoundButton.h" 標頭檔案加上

編譯專案,報錯了,

 

 錯誤問題是atan2函式少標頭檔案,自己把#include <cmath> 標頭檔案加上就好了,編譯通過

 

 4.將CRoundButton類 與 我們的button控制元件就行繫結

去對話方塊的標頭檔案裡面找到m_btn這個變數,然後將它前面的CButton類改成CRoundButton類

CRoundButton也是繼承CButton的,是別人重繪封裝的控制元件。 class CRoundButton : public CButton

 

 

 

 換完之後,編譯專案,然後去NX裡面執行。

大功告成

演示

 

這樣一來,無論用MFC做什麼樣的介面,想要好看美觀,那麼去重繪就可以了。

自己還需要重繪哪些控制元件,就去codeproject找,如果沒有滿足需求的,太個性化的,就自己去寫程式碼重繪。

更多內容

https://www.codeproject.com/Articles/2674/Store-and-show-Tree-struct-in-a-Combobox

 

阿飛

2022年4月19日