影音先锋男人资源av站_狠狠色综合激情丁香五月_爱爱爱爱看视频_在线播放免费人成视频在线观看_少妇人妻综合久久中文字幕_国产午夜无码精品免费看_久久久久久夜精品精品免费啦_男人女人午夜视频免费_日本xxxx裸体xxxx_丰满人妻熟妇乱又仑精品
電子科大論壇-非清水河畔
標題:
開發(fā)底層控件原理
[打印本頁]
作者:
重新來過
時間:
2007-3-25 10:37
標題:
開發(fā)底層控件原理
我們在開發(fā)應用程序的時候,用到的多是微軟給的控件,要不就是第三方開發(fā)的控件。很多時候控件的功能不能達到我們的要求,一般的做法就是利用幾個控件組合在一起拼成一個控件,但是這樣做很不好,1性能上有影響2我們的寫更多的所謂的無用代碼來屏蔽那些我們不想要的功能。好啦廢話就說到這里,解決辦法就是開發(fā)一個自己的控件----有點難度
方法利用微軟的atl開發(fā)
利用atl開發(fā)控件時可以基于mfc制作控件,這樣的工作就會很簡單,簡單的東西就不在這里講了。
今天只講原理,
做控件需要注意哪些問題,首先是功能,然后就是利用場所,這里我要說句,我討厭跨平臺,什么開發(fā)出來的東西既能在windows上用,有能在linux上用,我感覺沒必要,打個比方,我去買手機,我只要知道這個手機能夠通話發(fā)短信就可以,沒有必要知道這個手機還有其他什么功能,如果真的需要mp3,我完全可以自己再買個,手機上帶的mp3功能無非是給手機漲身價,對客戶沒什么用處。還有就是用c開發(fā)出來的東西不可能像java那樣絕對跨平臺。理由不解釋
控件的利用場所:我們用c/c++作東西,不是因為他難或者使用它做出來東西就有成就感。關鍵在于他的速度快,如果是開發(fā)程序,我們使用的更多的還是vb等開發(fā)語言。這點大家不用擔心,利用vc開發(fā)出來的東西能有在vb,.net平臺上使用。
實現(xiàn): 一個控件需要哪些功能,如何去實現(xiàn)
比方說控件上的文本信息,顏色,字體等,如果是基于mfc的話就很簡單,借口已經做好。
但是純粹就是利用atl的話,這些功能我們只能自己去實現(xiàn)。這時你的知道怎么去繪制控件。
至少能認識HDC這個局并,并知道他的作用吧
最后講到的就是事件,比方說單擊它會有什么發(fā)生,而且把這個接口暴露給用戶,讓用戶自己去實現(xiàn)。
今天就寫這么多,以后有時間再接
作者:
iwxiaot
時間:
2007-5-1 22:19
你寫的這些東西只有熟悉COM和ATL的人才看得懂吧
問一下,你有沒有用過CSubclassWnd這個類,也是繪制皮膚子類化時常用的
作者:
重新來過
時間:
2007-6-15 12:52
你說的沒錯,但是當你懂得原理后,我個人經驗告訴我不一定非得懂得這些東西的人才能開發(fā)控件。關鍵在于原理,只要知道事件的原理,我們完全可以脫離所謂的理論。這樣才能達到創(chuàng)造的層次。否則就是生產
作者:
iwxiaot
時間:
2007-6-15 18:52
可不可以告訴一下你的聯(lián)系方式,遇到問題好請教一下
作者:
重新來過
時間:
2007-6-22 21:36
好的
guvc@163.com
歡迎光臨 電子科大論壇-非清水河畔 (http://www.hallmarkedu.com/)
Powered by Discuz! X3.4