typedef
struct pageaction t_pageaction,
*pt_pageaction;
typedef
struct pagelayout t_pagelayout,
*pt_pagelayout;
static t_layout g_atmainpageiconslayout=
,,,,
};static t_pagelayout g_tmainpagelayout =
;static t_pageaction g_tmainpageaction =
;
計算頁面中各圖示座標值
static
void
calcmainpagelayout
(pt_pagelayout ptpagelayout)
/* interval圖示 */
atlayout[1]
.itoplefty = atlayout[0]
.ibotrighty + iheight /2+
1;atlayout[1]
.ibotrighty = atlayout[1]
.itoplefty + iheight -1;
atlayout[1]
.itopleftx =
(ixres - iwidth *2)
/2; atlayout[1]
.ibotrightx = atlayout[1]
.itopleftx + iwidth *2-
1;itmptotalbytes =
(atlayout[1]
.ibotrightx - atlayout[1]
.itopleftx +1)
*(atlayout[1]
.ibotrighty - atlayout[1]
.itoplefty +1)
* ibpp /8;
if(ptpagelayout->imaxtotalbytes < itmptotalbytes)
/* return圖示 */
atlayout[2]
.itoplefty = atlayout[1]
.ibotrighty + iheight /2+
1;atlayout[2]
.ibotrighty = atlayout[2]
.itoplefty + iheight -1;
atlayout[2]
.itopleftx =
(ixres - iwidth *2)
/2; atlayout[2]
.ibotrightx = atlayout[2]
.itopleftx + iwidth *2-
1;itmptotalbytes =
(atlayout[2]
.ibotrightx - atlayout[2]
.itopleftx +1)
*(atlayout[2]
.ibotrighty - atlayout[2]
.itoplefty +1)
* ibpp /8;
if(ptpagelayout->imaxtotalbytes < itmptotalbytes)
}
為"主頁面"獲得輸入資料,判斷輸入事件位於哪乙個圖示上
static
intmainpagegetinputevent
(pt_pagelayout ptpagelayout, pt_inputevent ptinputevent)
顯示"主頁面"
static
void
showmainpage
(pt_pagelayout ptpagelayout)
"主頁面"的執行函式: 顯示選單圖示,根據使用者輸入作出反應
static
void
mainpagerun
(pt_pageparams ptparentpageparams)
case1:
case2:
default:}
}
iindexpressed =-1
;}}else}}
}}
數碼相框 渲染模組
render模組包含三個部分 format,operation和render.c,其中format為檔案解析模組,operation為操作模組,render.c為渲染函式。format目錄 operation目錄 render.c picfmt manager.c zoom.c merge.c bm...
數碼相框專案模組 二 UART
如果要想在串列埠工具dwn上顯示列印資訊,使用c語言的標準庫是沒有效果的,必須利用開發板上的串列埠,經過cpu來進行輸出列印資訊,uart模組可以實現輸入和輸出的功能 一 配置i 0 暫存器 要在原理圖上找到串列埠,這裡我們使用串列埠0 u12 需要在原理圖上找到接收資料訊號 xrxd0 和 傳送資...
1 數碼相框 相框框架分析 1
專案流程 弄清需求 1 上電,lcd顯示一副 2 根據配置檔案,決定停留當前介面還是自動顯示下一張 3 點選一下,出現乙個對話方塊 手動顯示,自動顯示 4 上放大,下縮小,左右滑動切換 5 左右滑動很快時,切換上上 下下一張 設計框架 通過兩部分來完成 1 輸入程序 如下圖所示 建立3個執行緒 觸控...