青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆-341  評論-2670  文章-0  trackbacks-0
    圣誕節(jié)人山人海啊,根本不能出去玩什么的,妹紙第二天還要考試,所以就在家里呆著,順便把TreeView給做了。源代碼都在Vczh Library++ 3.0(Candidate\GUI\GUIDemo\GUIDemo.sln)。下面是Direct2D渲染出來的帶反鋸齒的TreeView。





    這個(gè)TreeView是通過把ListView進(jìn)行擴(kuò)展,替換IItemProvider和IItemStyleProvider而完成的。在這里TreeView仍然使用Virtual List模式。程序員將有機(jī)會(huì)在用戶展開某個(gè)TreeNode的時(shí)候才開始加載里面的內(nèi)容。這次仍然可以修改template(控件皮膚)。當(dāng)程序員提供了一個(gè)INodeProvider之后,GacUI已經(jīng)準(zhǔn)備了兩個(gè)現(xiàn)成的類,將INodeProvider轉(zhuǎn)成IItemProvider,將INodeItemStyleProvider轉(zhuǎn)成IItemStyleProvider,從而將樹形結(jié)構(gòu)轉(zhuǎn)換成列表結(jié)構(gòu)而使用ListView進(jìn)行顯示和操作。這個(gè)過程也封裝成了一個(gè)GuiVirtualTreeListControl。如果不需要提供自己的虛擬化算法的話,直接提供INodeProvider和INodeItemStyleProvider將可以直接使用GuiVirtualTreeListControl顯示樹形結(jié)構(gòu)。

    將一個(gè)虛擬化的樹形結(jié)構(gòu)轉(zhuǎn)換成一個(gè)虛擬化的列表結(jié)構(gòu)是比較復(fù)雜的,特別是當(dāng)需要高性能的情況下。因此GacUI內(nèi)置了這個(gè)算法的支持。一般情況下程序員不需要修改這個(gè)過程,直接使用GuiVirtualTreeListControl就可以實(shí)現(xiàn)。這一次內(nèi)置的Windows7皮膚同時(shí)實(shí)現(xiàn)了跟Windows7資源管理器非常相似的外觀(特別是那些三角形)。DirectX版本有反鋸齒,而GDI版本則沒有。

    現(xiàn)在要完成的功能已經(jīng)剩下下面所示(順序與優(yōu)先級(jí)無關(guān)):
    1、Ribbon
    2、Visual Studio那樣子的Dock Panel
    3、Canvas
    4、完善鍵盤操作
    5、提供類似簡化后的XAML一樣的結(jié)構(gòu)來保存界面
    6、基于XML(見5)的界面編輯器,類似簡化后的Expression Blend
    7、具有跟XML內(nèi)一樣外觀的,封裝在DLL里的接口(帶反射,以便實(shí)現(xiàn)XML,但是被設(shè)計(jì)成C++使用時(shí)將沒有有性能損失)
    8、內(nèi)置FreeScript3.0的支持,用于方便實(shí)現(xiàn)各種高級(jí)的皮膚,并且如果愿意的話,可以將整個(gè)程序用FreeScript3.0寫
    9、UIAutomation
posted on 2011-12-25 06:08 陳梓瀚(vczh) 閱讀(3358) 評論(15)  編輯 收藏 引用 所屬分類: GacUI

評論:
# re: 圣誕節(jié)完成ListView和TreeView 2011-12-25 07:09 | 春秋十二月
建議陳兄將自己的基礎(chǔ)庫部分,分成include,src,lib,bin,doc等幾個(gè)目錄進(jìn)行管理分發(fā),對于源碼的編譯提供好make腳本,包括(windows)vc和(linux)gcc,這樣就能讓更多的人分享你的成果,并提出測試bug反饋   回復(fù)  更多評論
  
# re: 圣誕節(jié)完成ListView和TreeView 2011-12-25 09:03 | 陳梓瀚(vczh)
@春秋十二月
等這個(gè)搞定了,會(huì)直接出dll,連make你都不用操心了……  回復(fù)  更多評論
  
# re: 圣誕節(jié)完成ListView和TreeView 2011-12-25 17:38 | 春秋十二月
@陳梓瀚(vczh)
同時(shí)也要開源呀
  回復(fù)  更多評論
  
# re: 圣誕節(jié)完成ListView和TreeView 2011-12-25 18:52 | ooseven
5、提供類似簡化后的XAML一樣的結(jié)構(gòu)來保存界面

要實(shí)現(xiàn)這個(gè)就需要提供類的自動(dòng)生成的支持。
比如 TreeView MyTreeView;
那么通過xaml保存并讀取后變成字符串的"MyTreeView", 然后通過自動(dòng)生成機(jī)制實(shí)現(xiàn)類似 CreateObject("MyTreeView");
  回復(fù)  更多評論
  
# re: 圣誕節(jié)完成ListView和TreeView 2011-12-25 20:44 | 陳梓瀚(vczh)
@春秋十二月
難道我那么大個(gè)開源的鏈接放在那里,你不點(diǎn)嗎……不要浮躁啊……

至于沒有make的問題,我相信勤勞的、智慧的、勇敢的linux排程序員,肯定幾秒鐘就可以用它喜愛的腳本寫出一個(gè)小軟件來parse我那個(gè)存放了代碼文件目錄的xml的(Candidate\GUI\GUIDemo\GUIDemo\GUIDemo.vcxproj),然后生成make腳本的。  回復(fù)  更多評論
  
# re: 圣誕節(jié)完成ListView和TreeView 2011-12-25 20:46 | 陳梓瀚(vczh)
@ooseven
因?yàn)镃++不支持反射,所以我目前的想法是,我把需要反射的東西全部寫在一個(gè)xml里面,然后我寫一個(gè)C#程序去生成C++代碼,分別包含C++的dll接口,C的dll接口,還有內(nèi)部的整個(gè)反射的框架。這樣雖然你改代碼的時(shí)候還要把你的method名字加進(jìn)xml,但已經(jīng)是相當(dāng)省力了。  回復(fù)  更多評論
  
# re: 圣誕節(jié)完成ListView和TreeView 2011-12-25 22:00 | 空明流轉(zhuǎn)
Parse你妹,肯定是根據(jù)你的工程設(shè)置直接逆向一個(gè)跨平臺(tái)的Project出來。  回復(fù)  更多評論
  
# re: 圣誕節(jié)完成ListView和TreeView 2011-12-26 00:01 | ooseven
@陳梓瀚(vczh)

類的動(dòng)態(tài)生成機(jī)制不一定需要語言具有反射機(jī)制,當(dāng)然,如果語言本身有的話是最優(yōu)雅的解決方案,但是,如果沒有的話,還是可以有替代方案的。比如MFC就是通過一個(gè)存放著字符串對應(yīng)函數(shù)指針的結(jié)構(gòu)的鏈表來實(shí)現(xiàn)的。該函數(shù)指針指向一個(gè)直接返回new MyTreeView的函數(shù);MFC對于這個(gè)機(jī)制設(shè)計(jì)了最簡單的接口,只需要調(diào)用兩個(gè)宏就可以實(shí)現(xiàn),DECLARE_DYNCREATE與IMPLATEMENT_DYNCREATE。只要用戶調(diào)用了這兩個(gè)宏,如何讓類名加入到類名鏈表,在類里定義一個(gè)CreateObject的靜態(tài)函數(shù),等繁文縟節(jié)都自動(dòng)搞定。  回復(fù)  更多評論
  
# re: 圣誕節(jié)完成ListView和TreeView[未登錄] 2011-12-26 00:31 | 春秋十二月
@陳梓瀚(vczh)
我還沒有專門時(shí)間看過你的代碼  回復(fù)  更多評論
  
# re: 圣誕節(jié)完成ListView和TreeView 2011-12-26 00:35 | 陳梓瀚(vczh)
@空明流轉(zhuǎn)
勤勞的,智慧的,勇敢地linux派程序員是肯定不會(huì)在意這些問題的!(逃  回復(fù)  更多評論
  
# re: 圣誕節(jié)完成ListView和TreeView 2011-12-26 00:38 | 空明流轉(zhuǎn)
@陳梓瀚(vczh)
擦擦,干你。
  回復(fù)  更多評論
  
# re: 圣誕節(jié)完成ListView和TreeView 2011-12-26 00:39 | 陳梓瀚(vczh)
@ooseven
主要是我現(xiàn)在的C++代碼并不作為dll的接口,而且里面會(huì)有一些模板啊factory什么的,所以那么簡單的方法自然是不能用了。到時(shí)候你接觸到的C++接口肯定是通過C的dll接口包裝過的。因此反射也做在這上面。  回復(fù)  更多評論
  
# re: 圣誕節(jié)完成ListView和TreeView 2011-12-26 00:51 | 空明流轉(zhuǎn)
@春秋十二月
大哥你真幽默。  回復(fù)  更多評論
  
# re: 圣誕節(jié)完成ListView和TreeView 2011-12-29 21:35 | phoenixbing
我是經(jīng)常看這貨的代碼,可惜我發(fā)現(xiàn)我看的沒他寫的快,很悲催,這種感覺,你們懂的.  回復(fù)  更多評論
  
# re: 圣誕節(jié)完成ListView和TreeView 2012-01-10 22:54 | 蔡?hào)|赟
兄弟 開始搗鼓界面庫了?  回復(fù)  更多評論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            日韩视频不卡| 亚洲观看高清完整版在线观看| 一区二区三区精品在线| 欧美日本国产精品| 亚洲欧美成人一区二区三区| 亚洲欧美视频一区| 在线播放中文一区| 亚洲精品国精品久久99热| 国产精品扒开腿做爽爽爽软件 | 久久蜜桃精品| 日韩视频在线播放| 一本久道久久久| 国产一区二区电影在线观看 | 久久久精品一区| 久久亚洲精品一区| 亚洲视频免费看| 午夜欧美理论片| a91a精品视频在线观看| 亚洲欧美激情在线视频| 亚洲国产精品福利| 亚洲视频中文| 亚洲激情视频网| 亚洲一区在线播放| 亚洲人www| 午夜精品久久久久久久99樱桃 | 久久成人免费视频| 欧美大片在线观看| 欧美在线观看一二区| 欧美国产视频日韩| 欧美午夜不卡视频| 欧美国产亚洲视频| 国产一区二区三区黄| 91久久国产综合久久| 国模吧视频一区| 一级日韩一区在线观看| 在线日本欧美| 欧美一级大片在线观看| 99re热这里只有精品视频| 午夜精品久久久久久久白皮肤 | 久久人人精品| 国产精品videosex极品| 欧美激情在线狂野欧美精品| 国产亚洲二区| 一本久久知道综合久久| 日韩视频欧美视频| 狂野欧美性猛交xxxx巴西| 欧美一区三区三区高中清蜜桃 | 欧美天天影院| 亚洲国产精品嫩草影院| 亚洲国产精品激情在线观看| 欧美在线一二三| 久久国产色av| 国产欧美成人| 亚洲综合三区| 欧美与黑人午夜性猛交久久久| 国产精品www| 国产精品99久久久久久白浆小说| 夜夜爽99久久国产综合精品女不卡| 免费欧美在线| 亚洲国产精品久久久久婷婷884| 在线观看国产日韩| 久久亚洲春色中文字幕| 欧美成人四级电影| 亚洲激情视频在线播放| 美女网站在线免费欧美精品| 欧美韩日视频| 亚洲精品美女久久7777777| 欧美成人精品福利| 最近中文字幕mv在线一区二区三区四区| 亚洲高清视频一区| 欧美国产一区视频在线观看 | 美脚丝袜一区二区三区在线观看| 黄色成人小视频| 久久一区二区精品| 亚洲人成人99网站| 99在线热播精品免费| 欧美午夜在线一二页| 亚洲免费一区二区| 毛片精品免费在线观看| 最新69国产成人精品视频免费| 欧美大色视频| 亚洲影院在线观看| 免费视频久久| 亚洲午夜激情免费视频| 国产欧美日韩一区二区三区在线观看| 欧美一区=区| 亚洲风情亚aⅴ在线发布| 亚洲天堂视频在线观看| 国产日韩专区| 欧美www视频| 亚洲欧美色婷婷| 一区二区三区久久久| 国产婷婷色一区二区三区在线| 久久久青草青青国产亚洲免观| 亚洲欧洲在线看| 久久精品国产在热久久| 亚洲精品综合| 国产免费观看久久| 欧美国产日产韩国视频| 亚洲欧美日韩中文播放| 亚洲国产精品成人综合色在线婷婷 | 久久久久国产精品www| 亚洲国产精品欧美一二99| 亚洲欧美一区二区三区极速播放 | 国产亚洲一级| 欧美激情精品久久久久久免费印度 | 亚洲综合丁香| 亚洲国产精品久久久久| 久久精品免费播放| 这里只有精品电影| 亚洲激情视频| 依依成人综合视频| 国产精品一区二区三区久久久| 欧美韩日一区二区三区| 欧美在线黄色| 亚洲一区一卡| 一本久久a久久免费精品不卡| 免费成人高清视频| 久久九九国产| 欧美一级在线播放| 亚洲视频网在线直播| 亚洲精品视频在线| 在线免费一区三区| 国产在线播放一区二区三区| 欧美视频免费在线观看| 欧美成人在线免费视频| 久久久噜噜噜久久| 欧美一区二视频| 午夜视频在线观看一区| 亚洲视频网在线直播| 99精品国产高清一区二区| 亚洲韩国精品一区| 亚洲国产mv| 亚洲第一黄网| 亚洲电影在线播放| 亚洲国产精品成人一区二区| 欧美国产日韩一区二区在线观看| 玖玖视频精品| 免费成人在线视频网站| 老司机凹凸av亚洲导航| 久久―日本道色综合久久| 久久国产精品久久久久久久久久| 欧美亚洲视频一区二区| 欧美一区二区三区在线免费观看| 亚洲免费在线| 欧美在线视频播放| 久久综合九色| 欧美护士18xxxxhd| 欧美激情一区二区三区高清视频| 欧美激情在线免费观看| 日韩午夜在线观看视频| 一区二区久久久久| 午夜伦理片一区| 久久亚洲综合网| 免费日本视频一区| 欧美日本韩国| 国产日韩一区二区| 亚洲成色精品| 亚洲网站在线| 久久夜色精品国产欧美乱极品| 毛片一区二区| 久久激情五月激情| 亚洲人成绝费网站色www| 99国产精品99久久久久久粉嫩| 一区二区三区回区在观看免费视频| 99国产精品久久久久久久| 亚洲午夜精品| 久久久综合视频| 欧美国产一区视频在线观看 | 香蕉久久国产| 麻豆精品网站| 一本久道久久综合婷婷鲸鱼| 香蕉久久a毛片| 欧美成人免费一级人片100| 欧美午夜精品理论片a级大开眼界| 国产亚洲美州欧州综合国| 亚洲人成在线播放| 欧美在线免费视屏| 亚洲国产欧美精品| 午夜精品区一区二区三| 你懂的国产精品永久在线| 国产伦精品一区二区三区在线观看| 伊人久久男人天堂| 亚洲欧美精品在线| 欧美黄色一区二区| 欧美一区二区精品| 欧美视频中文一区二区三区在线观看| 国产欧美日韩麻豆91| 在线一区二区视频| 亚洲第一网站| 久久激情综合| 国产精品日韩久久久| 99精品视频免费| 欧美国产免费| 久久精品国产一区二区三区免费看 | 欧美一区二区三区播放老司机| 欧美激情国产日韩| 在线精品在线| 久久视频精品在线| 午夜精品国产更新|