minigui控制項管理之建立控制項

2021-05-06 18:03:31 字數 545 閱讀 9058

所有的控制項都是通過

createwindow

這個函式建立的,該函式是乙個巨集,定義於

include/window.h

可以看出,對該函式的呼叫實際是呼叫了

createwindowex

,它的定義在

src/gui/window.c

第4533行

正是從我們前面說的全域性hash表

ccitable

中獲得要建立控制項的控制項類資訊,然後填充到

pcontrol

型別的資料結構中。這個資料結構完整的描述了乙個控制項。初始化完

pcontrol

型別的資料結構之後,會向桌面執行緒傳送乙個

msg_newctrlinstance

訊息,用於把新的控制項插入到其父視窗的控制項列表中。接著還會向新的控制項傳送

msg_create

、msg_sizechanging

、msg_changesize

幾個訊息,把控制項畫到其父視窗上。

最後會返回新控制項的控制代碼,控制項的建立也結束了。

minigui控制項管理之銷毀控制項

控制項的銷毀是由函式 destroywindow 完成的,src gui window.c 它開始會向控制項傳送 msg destroy 訊息,在編輯框控制項的視窗過程中是這樣處理的src control edit.c sledit destroy 這個函式所做的工作就是釋放該控制項所佔的資源。傳送...

minigui控制項管理之登出控制項類

1 系統登出 系統中登出控制項類的 在 src gui ctrlclass.c 檔案中 可以看出,它將 ccitable 中註冊的所有控制項類所佔的記憶體資源都都釋放掉了。這裡沒什麼好說的。2 登出自定義控制項類 如果要登出自定義的控制項類可通過 unregisterwindowclass 函式實現...

敏捷專案管理之專案進度和風險管控

是指細化到具體任務的進度管理,這部分的進度管控是精確的,也主要是專案經理和專案成員需要重點實時關注和把控的。乙個專案往往有成百上千個需求任務,根據版本計畫安排,對計畫中的任務進度的精確把控,實時關注專案組員遇到的問題和風險,及時的調整資源或計畫,共同做好細節上的風險管控。2 巨集觀層面 是指對專案里...