91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

wxWidgets第五課 EVT_SIZE窗口修改事件

發布時間:2020-08-19 14:22:58 來源:網絡 閱讀:1831 作者:fengyuzaitu 欄目:系統運維

說明

    當父窗口的大小發生改變的時候,父窗口的OnSize函數優先調用,然后遍歷子窗口的OnSize函數。在自定義控件,并且實現隨著父窗口的大小,進行伸縮變換,可以創建一個比例尺因子,根據父窗口當前的大小,在父窗口的OnSize函數中調用子控件的兩個方法進行子控件大小和位置的調整:

SetPosition設置子控件的位置

SetClientSize設置子控件的大小


問題

為了能夠實現界面的拉伸,當窗口發生改變的時候,發出重繪事件(OnSize會調用OnPaint)進行界面的刷新,可以看到在快速伸縮窗口的情況下,非常明顯看到閃爍的情況。


解析

在系統設置最佳的外觀性能要求,拉伸界面的邊框,會出現虛擬邊框,等到鼠標彈起的時候,才會重新渲染界面,避免了閃爍。在其他的外觀選項下,拉伸界面邊框的時候,實時的渲染,會產生閃爍現象


真正自定義渲染

目前想到的一個解決方案:當鼠標按下拖動窗口的時候,并不進行窗口的重繪,而是等到鼠標彈起的時候,才進行重繪,這里就涉及到一個難點,該在什么地方關聯鼠標彈起事件EVT_LEFT_UP,并且需要實時控制邊框的渲染



注意

    當父控件銷毀的時候,也會調用子控件的析構函數,對子控件進行銷毀


兩次進入OnSize函數的問題

    啟動程序,在準備進入到主界面,渲染自定義的控件時候,檢測到有兩次進入到OnSize函數,導致界面在進入的時候,渲染了兩次,目前不清楚是什么地方發送了兩次WM_ONSIZE消息,導致該問題


懷疑方向

    1 是否是設置了父窗口指針:證實必須提供一個父窗口的指針

    2 是否是設置了擴展屬性WX_EXPAND:沒有理由根據


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

江津市| 汉寿县| 湖南省| 宝鸡市| 胶南市| 通海县| 南投县| 乃东县| 广河县| 常德市| 渝中区| 北京市| 博罗县| 安义县| 平乐县| 衡东县| 钟山县| 简阳市| 英德市| 民乐县| 长寿区| 定远县| 尼勒克县| 汨罗市| 县级市| 门源| 洛南县| 油尖旺区| 双桥区| 即墨市| 定南县| 余姚市| 桐庐县| 游戏| 西昌市| 海口市| 永修县| 台南市| 文水县| 威远县| 库伦旗|