解決方案 duilib中禁止乙個視窗雙擊最大化

2021-07-06 06:10:11 字數 909 閱讀 6151

用duilib開發了乙個視窗,比如是登入視窗,那麼這個視窗的視窗的雙擊最大化就毫無意義,甚至帶來災難,我們就要明確禁止這樣的行為。

我們應該明確,乙個視窗建立的時候就賦予了它一些屬性,那我們就首先看看如何建立視窗的,即create函式。

例如,你定義了乙個視窗類叫loginwnd,你會在需要的時候這用進行建立乙個視窗:

loginwnd login_wnd;

login_wnd.create(nullptr, _t("登入視窗"), ui_wndstyle_frame, ws_ex_windowedge);

#define ui_wndstyle_dialog (ws_visible | ws_popupwindow | ws_caption | ws_dlgframe | ws_clipsiblings | ws_clipchildren)

這裡呢,我們注意是分析一下ui_wndstyle_frame 和 ui_wndstyle_dialog 的區別所在。

ui裡的巨集

窗體樣式巨集

ui_wndstyle_container 容器樣式,無任何樣式

ui_wndstyle_frame ui標準框架窗體樣式(標題欄、邊框、圖示、標題、最大、最小按鈕、關閉按鈕)

ui_wndstyle_child ui窗體子控制項樣式

ui_wndstyle_dialog ui對話方塊窗體樣式擴充套件窗體樣式巨集

ui_wndstyle_ex_frame 窗體客戶區凹陷樣式

ui_wndstyle_ex_dialog 工具欄視窗樣式+模式對話方塊樣式

因此 如果我們想要禁止雙擊最大化,那再建立視窗的時候就使用ui_wndstyle_dialog 這個巨集定義。

如何選擇乙個適合的解決方案

在做工程專案時,面對乙個任務,一般會有多種解決方案擺在自己的面前,供自己選擇,此時,如何選擇乙個適合的解決方案尤其重要,下面的幾個原則是實驗室小型會議討論出的 1.根據工程負責人自身的實力和工程的時間充裕程度,選擇乙個能在規定時間內完成的解決方案。2.可以選擇使用一些使用者使用起來簡單,而對工程負責...

乙個不錯的asp高效解決方案

1,連線字串用udl檔案 oledb everything after this line is an ole db initstring provider sqloledb.1 password pwd persist security info true user id sa initial c...

分享乙個在工作中遇到的乙個問題的解決方案

背景環境 當然如果採用重建表的方式,對於實現這功能來說就很簡單了,但是,這樣修改以後,涉及到很多的東西,比如後台管理方面要做修改,這樣編輯人員已經習慣的後台操作方式,如進行修改可能還得習慣一陣才可以順手使用,而且原來有了很多資料,就以目前的情況來看,並不是最佳的選擇。所以就選擇了第二種,利用程式分割...