由於vc6沒有封裝記憶體dc,要想寫出漂亮的介面就會比較困難,也會導致螢幕的閃爍,封裝好這個類以後再去開發軟體就會簡單很多,今天我們就來構造乙個屬於我們自己的記憶體dc。
載入點陣圖的方式有很多種,首先寫乙個從資源中載入點陣圖的函式。
bool loadbitmap(uint nbitmapid,cdc* pdc=null)
然後構造乙個從檔案載入點陣圖的函式。
bool loadbitmap(lpcstr szbitmapfile,cdc* pdc=null)
我們還需要建立一張空白的畫布,這個函式在解決閃爍的時候需要用到。
bool create(int cx,int cy,cdc* pdc = null)
接下來我們需要建立三個建構函式,分別對應不同的點陣圖載入方式。
cmemdc(uint nbitmapid,cdc* pdc=null)
cmemdc(lpcstr szbitmapfile,cdc* pdc=null)
cmemdc(int cx,int cy,cdc* pdc = null)
我們經常需要在螢幕上輸出背景透明的,下面這個函式就可以使背景透明。
void bittrans(
int nxdest,
// 目標起點x
int nydest,
// 目標起點y
int nwidthdest,
// 目標寬度
int nheightdest,// 目標高度
cdc* pdc,
// 目標dc
int nxsrc,
// **起點x
int nysrc,
// **起點y
colorref crtrans// 透明色)
void stretchtrans(
int nxdest,
// 目標起點x
int nydest,
// 目標起點y
int nwidthdest, // 目標寬度
int nheightdest, // 目標高度
cdc* pdc,
// 目標dc
int nxsrc,
// **起點x
int nysrc,
// **起點y
int nwidthsrc,
// **寬度
int nheightsrc,
// **高度
colorref crtrans
// 透明色
)
activiti構造屬於自己的流程定義
說起actviti,很多人都會說它支援bpmn標準,它的流轉都是基於bpmn檔案來執行!但我們在設計流程時,流程定義真的只能是bpmn定義嗎?其實不然,activti可以支援任意流程定義,只要你發布流程時,將你的流程定義轉成bpmn檔案即可!分析如下 表act re model是activiti用於...
Nuget發布屬於自己的C 類庫包
登入你的 nuget.org 帳戶,或建立乙個帳戶 如果你還沒有帳戶 選擇使用者名稱 在右上角 然後選擇 api 金鑰 選擇 建立 提供金鑰名稱,選擇 選擇範圍 推送 在 api 金鑰 下,輸入 glob 模式 然後選擇 建立 建立金鑰後,選擇 複製 檢索需要在 cli 中使用的訪問金鑰 重要事項 ...
選擇屬於自己的ERP
太平洋三威公司 pacific sunwear 通過建立乙個特別的erp系統,成長為擁有1000家連鎖分店的零售商。早在1994年,擁有90家分店的加利福尼亞太平洋三威公司 以下簡稱太平洋三威 在美國西海岸就已頗具影響。隨後該公司進行了大規模的拓展,現在該公司計畫在未來3年裡再增加300家分店,到2...