GreenOpenPaint的實現(三)新增標尺

2022-01-23 13:01:13 字數 1224 閱讀 4972

標尺對於影象處理程式,特別是需要精確測量的程式來說意義很大。這裡進行了專門的研究。

基於現在已經引入的類和定義的變數,主要講一講如何呼叫。

1、新增放大縮小

voidcgreenopenpaintdoc::scalefactorzoomin(void) }

voidcgreenopenpaintdoc::scalefactorzoomout(void) }

2、在view中新增新增warpper 

voidcgreenopenpaintview::onupdate(cview* psender, lparam

lhint, cobject* phint)

voidcgreenopenpaintview::updaterulersinfo(intnmessage, cpoint

scrollpos, cpoint

pos)

3、mainframe中新增

warpper 

voidcmainframe::updaterulersinfo(struler_info

strulerinfo)

voidcmainframe::showrulers(boolbshow)

注意要把m_ruler添入

private:

crulersplitterwnd

m_rulers;

4、重寫mainframe 的 oncreateclient事件

boolcmainframe::oncreateclient(lpcreatestructlpcs,ccreatecontext* pcontext)

return

true;    

}這個時候標尺出現,只不過由於沒有指示量綱,所以沒有畫刻度

p.s 注意這個時候,一定要在view建立的時候進行scroll尺度的初始化,否則會assert錯誤

當匯入的時候,出現真實標尺。這裡是按照厘公尺這個量綱進行計算的。

container of 的的的原理

另外一篇,同樣精彩,揭開linux核心中container of的神秘面紗 華清遠見嵌入式學院講師。在linux 核心中有乙個大名鼎鼎的巨集container of 這個巨集是用來幹嘛的呢?我們先來看看它在核心中是怎樣定義的。呵呵,乍一看不知道是什麼東東。我們先來分析一下container of p...

存在的就是合理的,發生的即是必然的。

筆者有時候會想,什麼是對,什麼是錯?對於追求某一件事情之前首先會考慮,為什麼我要做這件事情。所以經過自我分析和生活周邊環境的總結。我認為,對於乙個人來,這是在站在個體的角度上說。什麼是對的?就是你自己覺得是對的,它就是對的。不過這個只是你自己的想法。主觀上的正確,不代表客觀上也受到了別人的認可。就拿...

Apache的rewrite的重寫相關的引數

apache mod rewrite規則重寫的標誌一覽 使用mod rewrite時常用的伺服器變數 rewriterule規則表示式的說明 匹配任何單字元 chars 匹配字串 chars chars 不匹配字串 chars text1 text2 可選擇的字串 text1或text2 匹配0到1...