directfb
兩則技巧
directfb
的執行行為可以通過配置檔案進行控制,可以從多個配置檔案中讀出配置資訊,然後合併到一起,甚至可以對不同名稱的應用程式指定不同的配置檔案。其主配置檔案為
/etc/direcfbrc
,它的內容影響所有使用者的應用程式。 建立
pc模擬環境。
directfb
和x window
都是獨佔顯示裝置的,在通常的情況下,
directfb
執行時,
x window
就不能執行,反之亦然。當然,輸入裝置,如鍵盤、滑鼠等也是獨佔裝置,不能被
directfb
和x window
同時使用。
當我們用
directfb
開發嵌入式軟體時,要使用
x window
下的ide
的工具(如
glade
),同時又需要在
pc模擬執行開發的程式。此時,由於
x window
已經在執行,再執行
directfb
程式就會發生衝突。
怎麼辦呢?
directfb
的天才作者們早就想到這一點,
directfb
把後端(輸入裝置和顯示裝置)做了抽象,與
directfb
主體是分開的。
directfb
主體並不依賴於具體的物理設定,它可以利用
sdl、
x11、
vnc等作為後端。
所以要建立
pc模擬環境,是輕而易舉的事情。我們可以利用
x window
的輸入事件作為輸入裝置,利用
x window
的視窗作為顯示裝置。更進一步,可以利用
xnest(
見筆者另外一篇文章
),這樣就可以模擬不同螢幕大小的裝置,看到比較真實的外觀效果。選擇
x window
作為後端,可以使用下列引數:
system=x11
使用不同的視窗管理器。
directfb
的視窗管理器做得比較弱,它畢竟是針對嵌入式裝置的,我們沒有必要苛求。它自帶兩種不同的視窗管理器,可以根據自己的需要選擇。乙個稱為
default
,顧名思義,它是預設的視窗管理器,另外乙個稱為
unique
,功能更強一點。
default
只提供了最基本的視窗管理功能,如:
l視窗棧管理,提供諸如向棧中插入視窗、刪除棧中的視窗、調整視窗在棧的
z-order
位置等。
l輸入事件管理,根據輸入事件,切換焦點視窗,把訊息投遞到對應的視窗等功能。
l還提供了一些快捷操作方式,如關閉視窗,移動視窗等。
unique
除了提供
default
具有的基本功能外,還提供了:
l視窗裝飾功能,可以顯示視窗標題欄,四周邊框、四角圓角化等,但不能顯示標題本身(居然沒有這個基本功能!)。
l桌面背景
/顏色,可以設定桌面的背景
/顏色。這對於
demo
來說,會好看一點,但對於實際應用來說,作用不大。因為實際的桌面和
directfb
的桌面是兩個不同的物件。
l除錯功能,如顯示視窗棧中的視窗等。
l更重要的是,它相當於乙個框架,你可以在此基礎上擴充套件其它自己需要的功能。
選擇不同的視窗管理器,可以使用下列引數:
wm=default
或者wm=unique
man 使用技巧兩則
2007 09 08 toy posted in tips rss trackback 記得我初學 linux 使用時,首先了解的就是如何在 linux 系統中獲得幫助的課程。當然,這其中少不了 man 命令的介紹。今天,在 linux.com 讀到一篇介紹 man 使用技巧的文章,個人感覺很受用,...
兩則C語言技巧
兩則 c語言技巧 以前用 c 時,喜歡去玩一些語法上的技巧,每學到乙個技巧都高興得不得了,總是想找個地方用它,以顯示自己的水平。其實我們應該更關心技巧的實用價值,如果一項技巧很巧妙,但很少用它,忘掉了也不必覺得可惜。最近發現兩則 c語言技巧,以前沒有用過,覺得有些實用價值,做個筆記吧。1.陣列初始化...
兩則glib使用技巧
兩則glib使用技巧 作者 李先靜 1.用valgrind檢測glib的記憶體錯誤。前段時間我們發現乙個daemon總是隨機的crash,對於這種隨機的crash的bug,我們自然會想到是記憶體越界問題引起的。但是用valgrind檢測卻沒有發現任何錯誤,那部分 比較複雜,結果花了幾天也沒有發現任何...