万星星@豌豆荚 欢迎加入我们
一个吃软饭的男人!!!!!我只想写程序####
微博:http://weibo.com/wanlianwen
posts - 172,  comments - 1253,  trackbacks - 0

OutlookBar:
 

StackBar && ImageCanvas:

 
 


基于OPENGL的实现尝试:
 


3维里面中文字体的处理比较麻烦,dx10开始支持界面控件,不知道是否已经支持中文。dx9以及ogl本身不支持中文,所以需要借助其他辅助库。freetype是不错的字体管理库,用它来处理3维中的中英文会很轻松。

 
 


OGL实现版本,以后没时间做了,唉:
Hover:


Pressed:
 

MenuBar:
 

Menu图标处理:



最终界面描述文件:
<?xml version="1.0" encoding="utf-8"?>
<XUI>
  
<XUIVerticalLayout>
    
<XUIMenubar>
      
<XUIToolGripper>
      
</XUIToolGripper>
      
<XUIMenuButton text="文件" name="menu_file"></XUIMenuButton>
      
<XUIMenuButton text="编辑"></XUIMenuButton>
      
<XUIMenuButton text="视图"></XUIMenuButton>
    
</XUIMenubar>
    
<XUIToolbar>
      
<XUIToolGripper>
      
</XUIToolGripper>
      
<XUIToolButton text="哈哈" tooltip="我狠开心" icon="face.ico"></XUIToolButton>
      
<XUIToolSeparator></XUIToolSeparator>
      
<XUIToolButton icon="My documents.ico"></XUIToolButton>
      
<XUIToolButton icon="QQhome.ico"></XUIToolButton>
      
<XUIToolButton icon="security_normal.ico"></XUIToolButton>
      
<XUIToolSeparator></XUIToolSeparator>
      
<XUIToolButton icon="SongList.ico"></XUIToolButton>
    
</XUIToolbar>
    
<XUIHorizontalSplitLayout inset="3">
        
<XUIPane width="160">
          
<XUIOutlookBar>
            
<XUIOutlookBarPane icon="Yahoo Messenger.ico" text="邮件">
              
<XUIVerticalLayout>
                
<XUILabel text="  我的邮件箱"></XUILabel>
              
</XUIVerticalLayout>
            
</XUIOutlookBarPane>
            
<XUIOutlookBarPane icon="2.ico" text="日历"></XUIOutlookBarPane>
            
<XUIOutlookBarPane icon="3.ico" text="联系人"></XUIOutlookBarPane>
            
<XUIOutlookBarPane icon="4.ico" text="任务"></XUIOutlookBarPane>
            
<XUIOutlookBarPane icon="5.ico" text="便签"></XUIOutlookBarPane>
            
<XUIOutlookBarPane icon="6.ico" text="文件夹列表"></XUIOutlookBarPane>
          
</XUIOutlookBar>
        
</XUIPane>
        
<XUIPane>
          
<XUIHeaderPanel text="Demos">
            
<XUITopTab>
              
<XUITabPage text="TileLayout">
                
<XUITileLayout scrollbar="true">
                  
<XUIPushButton text="hello, xui1"></XUIPushButton>
                  
<XUIPushButton text="hello, xui2"></XUIPushButton>
                  
<XUIPushButton text="hello, xui3"></XUIPushButton>
                  
<XUIPushButton text="hello, xui4"></XUIPushButton>
                  
<XUIPushButton text="hello, xui5"></XUIPushButton>
                  
<XUIPushButton text="hello, xui6"></XUIPushButton>
                  
<XUIPushButton text="hello, xui7"></XUIPushButton>
                  
<XUIPushButton text="hello, xui8"></XUIPushButton>
                  
<XUIPushButton text="hello, xui9"></XUIPushButton>
                  
<XUIPushButton text="hello, xui10"></XUIPushButton>
                  
<XUIPushButton text="hello, xui11"></XUIPushButton>
                  
<XUIPushButton text="hello, xui12"></XUIPushButton>
                  
<XUIPushButton text="hello, xui13"></XUIPushButton>
                  
<XUIPushButton text="hello, xui14"></XUIPushButton>
                  
<XUIPushButton text="hello, xui15"></XUIPushButton>
                  
<XUIPushButton text="hello, xui16"></XUIPushButton>
                  
<XUIPushButton text="hello, xui17"></XUIPushButton>
                  
<XUIPushButton text="hello, xui18"></XUIPushButton>
                
</XUITileLayout>
              
</XUITabPage>
              
<XUITabPage text="DialogLayout">
                
<XUIDialogLayout scrollbar="false">
                  
<XUIPushButton text="hello, xui1" pos="100,0,200,20" stretch="group"></XUIPushButton>
                  
<XUIPushButton text="hello, xui2" pos="300,0,400,20" stretch="size_x"></XUIPushButton>
                  
<XUIPushButton text="hello, xui3" pos="0,100,200,130" stretch="group"></XUIPushButton>
                  
<XUIMultiLineEdit pos="300,25,400,90" stretch="size_x"></XUIMultiLineEdit>
                  
<XUISingleLineEdit text="你好!" pos="250,100,400,120"></XUISingleLineEdit>
                
</XUIDialogLayout>
              
</XUITabPage>
              
<XUITabPage text="StackBar">
                
<XUIHorizontalSplitLayout>
                  
<XUIPane width="160">
                    
<XUIStackBar>
                      
<XUIStackBarPane text="文件夹">
                        
<XUIActiveX clsid="ImagePreview.FolderTree.1" name="treeview"></XUIActiveX>
                      
</XUIStackBarPane>
                      
<XUIStackBarPane  text="Preview">
                        
<XUIActiveX clsid="ImagePreview.PreviewList.1" name="Preview"></XUIActiveX>
                      
</XUIStackBarPane>
                      
<XUIStackBarPane  text="其他"></XUIStackBarPane>
                    
</XUIStackBar>
                  
</XUIPane>
                  
<XUIPane>
                    
<XUIVerticalLayout>
                      
<XUIHorizontalLayout height="45">
                        
<XUIImageCanvas width="26" image="ui_lt.bmp" bitbltmode="stretch"></XUIImageCanvas>
                        
<XUIImageCanvas image="ui_t.bmp" bitbltmode="stretch">
                        
</XUIImageCanvas>
                        
<XUIImageCanvas width="45" image="ui_rt.bmp" bitbltmode="stretch"></XUIImageCanvas>
                      
</XUIHorizontalLayout>
                      
<XUIHorizontalLayout>
                        
<XUIImageCanvas width="26" image="ui_l.bmp" bitbltmode="stretch"></XUIImageCanvas>
                        
<XUIImageCanvas image="ui_m.bmp" bitbltmode="stretch"></XUIImageCanvas>
                        
<XUIImageCanvas width="45" image="ui_r.bmp" bitbltmode="stretch"></XUIImageCanvas>
                      
</XUIHorizontalLayout>
                      
<XUIHorizontalLayout height="32">
                        
<XUIImageCanvas width="26" image="ui_lb.bmp" bitbltmode="stretch"></XUIImageCanvas>
                        
<XUIImageCanvas image="ui_b.bmp" bitbltmode="stretch"></XUIImageCanvas>
                        
<XUIImageCanvas width="45" image="ui_rb.bmp" bitbltmode="stretch"></XUIImageCanvas>
                      
</XUIHorizontalLayout>
                    
</XUIVerticalLayout>
                  
</XUIPane>
                
</XUIHorizontalSplitLayout>
              
</XUITabPage>
              
<XUITabPage text="MSChart">
                
<XUIActiveX clsid="owc10.chartspace.10" name="mschart"></XUIActiveX>
              
</XUITabPage>
              
<XUITabPage text="WebBrowser">
                
<XUIActiveX clsid="Shell.Explorer.2" name="WebBrowser"></XUIActiveX>
              
</XUITabPage>
              
<XUITabPage text="DotNetCtrl">
                
<XUIDotNet assembly="NetCtrl|NetCtrl.UserControl1"></XUIDotNet>
              
</XUITabPage>
            
</XUITopTab>
          
</XUIHeaderPanel>
        
</XUIPane>
      
</XUIHorizontalSplitLayout>
  
</XUIVerticalLayout>
</XUI>
posted on 2007-08-10 14:35 万连文 阅读(963) 评论(5)  编辑 收藏 引用 所属分类: 小作品

FeedBack:
# re: Go On
2007-08-14 17:47 | minidxer
兄弟,太强拉~  回复  更多评论
  
# re: Go On[未登录]
2007-08-15 16:45 | jacky_zz
么么,太漂亮了!  回复  更多评论
  
# re: Go On
2007-08-20 13:26 | LifeAndC
关注你的BLOG很久了,不错,支持。  回复  更多评论
  
# re: Go On
2007-08-27 19:43 | heffett
支持  回复  更多评论
  
# re: Go On
2011-06-02 13:05 | MichealSun
代码可以开源吗?  回复  更多评论
  

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


简历下载
联系我

<2011年9月>
28293031123
45678910
11121314151617
18192021222324
2526272829301
2345678

常用链接

留言簿(66)

随笔分类

随笔档案

相册

搜索

  •  

最新评论

阅读排行榜

评论排行榜