大神的解釋:
Immediate Mode GUI (IMGUI)。這種類型的更多的適用于顯示區(qū)域?qū)崟r(shí)刷新的程序里面,例如游戲和CAD等。
Retained Mode GUI (RMGUI)
用一個(gè)傳統(tǒng)RMGUI庫的時(shí)候,用戶往往需要顯式的初始化每一個(gè)控件對(duì)象。每個(gè)控件都是存在內(nèi)存中的實(shí)體,并且每個(gè)控件都需要自己保存一部分?jǐn)?shù)據(jù)(例如一個(gè)slider需要保存一個(gè)數(shù)值,Button要保存一個(gè)回調(diào)事件等),用戶還需要在一個(gè)回調(diào)函數(shù)里將控件里的數(shù)據(jù)拷貝回程序本身中(MVC模式)。
IMGUI模式在使用上會(huì)更簡(jiǎn)單粗暴一些。控件沒有自己的對(duì)象,不保存任何狀態(tài),不用單獨(dú)的去實(shí)現(xiàn)UI和程序間數(shù)據(jù)的交換,甚至都不需要單獨(dú)為事件寫回調(diào)函數(shù)。每個(gè)控件就是一個(gè)函數(shù),直接在程序的Draw()函數(shù)里要哪個(gè)控件就調(diào)用哪個(gè)函數(shù)就好了。