当前位置: 首页 > 软件库 > 程序开发 > UI组件库 >

DuiVision

c++界面库
授权协议 MIT
开发语言 C/C++
所属分类 程序开发、 UI组件库
软件类型 开源软件
地区 国产
投 递 者 闾丘博
操作系统 Windows
开源组织
适用人群 未知
 软件概览

一个c++界面库.

DuiVision界面库是参考了仿PC管家程序、金山界面库、DuiEngineDuiLib等多个基于DirectUI的界面库开发的。

DuiVision界面库的特点是针对控件的定义、查找做了一些优化,可以通过名字或ID进行控件的查找,简化了界面的定义方式,并将界面和界面事件的处理进行分离,通过事件处理类进行界面事件的处理。DuiVision提供了一整套的界面程序开发方法,除了界面控件之外将任务处理、托盘、命令行等都进行了封装。DuiVision提供了常用的界面控件,以及浏览器控件、Flash控件等高级控件,并且界面控件的种类还在不蹲完善中。

  • 在MFC或者 DuiVision中获取DC绘图的一些方法: MFC : 有窗口的话,获取窗口指针或句柄,然后: 全局函数通过控件ID获取; HWND itemhWnd = ::GetDlgItem(m_pDlgBase->GetSafeHwnd()/* 父窗口句柄*/, IDC_STATIC_IMAGE /*控件ID*/); HDC hdc = ::GetDC(itemhWnd); hdc可以转换

  • 使用DuiVision开发的界面程序中,除了界面的描述之外,最主要的工作就是业务逻辑的处理,为了将业务逻辑和界面展示能够更好的分离,DuiVision中定义了事件处理基类,所有的业务逻辑都应该写在派生的事件处理类中,并把事件处理对象注册到相应的对话框或控件上,这样对应的子控件有事件需要处理的时候,就会自动调用注册的事件处理对象的相应函数。事件处理类只要在处理函数中根据控件的ID或名字决定该做什么事

  • DuiVision所有对象的基类是CDuiObject,包括控件类、对话框、菜单等都是由此派生的。此类没有对应的控件名,主要函数的说明如下: 函数 是否虚函数 说明 IsClass 是 判断是否此类 GetObjectClass 是 获取类名 BaseObjectClassName 是 获取基类名 GetID 否 获取对象ID GetName 否 获取对象名字 IsThisObject 否 根据I

  • 基于MFC的界面程序中,如果存在多线程,一般情况下只有主线程(界面线程)可以调用Windows窗口相关的函数,否则如果在其他线程中调用了界面函数,很可能会造成异常。为此DuiVision界面库提供了一个任务队列和相应的调度机制,可以将各种任务对象放到任务队列中按顺序执行,通过任务队列,可以做到其他线程和界面线程之间的中转调用,方法是创建任务对象时候指定是需要界面线程处理的任务,则任务调用过程中会通

  • DuiVision界面库可以通过ID和name两种方式灵活的进行控件的查找,每个控件对象创建的时候都会自动分配一个唯一ID,同时也可以给控件命名,查找一个控件也可以通过ID和name两种方式进行查找,因为ID方式查找不够灵活,所以一般情况下都建议用name的方式进行查找,控件的name有两种方式可以设置,一种方式是在xml文件中定义控件的name属性,另一种方式是控件创建之后调用SetName函数

  • 基于DuiVision的界面程序大部分情况下都是通过xml事先定义好界面的,但有时候需要通过代码来动态创建控件,可以参考下面的动态创建控件的例子: CDuiButton* pToolBtn = static_cast<CDuiButton*>(DuiSystem::CreateControlByName(L"button", m_pDlg->GetSafeHwnd(), m_pDuiObject)

  • DuiVision的每个控件都可以设置快捷键,设置方法是在xml中设置shortcut属性,例如下面这个控件设置快捷键为ESC键: <imgbtn name="button.close" pos="-45,0,-0,29" skin="IDB_BT_CLOSE" shortcut="ESC" /> 快捷键的写法是flag+char的形式,flag可以是CTRL、ALT、SHIFT,分别表示几个控制

  • CControlBaseFont类是DuiVision支持所有基类的控件的文本属性。 此控件例如属性列表,下面: 物业名称 类型 说明 title 字符串 控件的显示标题 font 字体 控件的字体,能够引用资源定义中定义的某个字体,默认字体是default fontname 字符串 直接指定某种字体 fontwidth 数字 直接指定字体宽度 height 数字 控件高度 valign 枚举 文

 相关资料
  • 我们将 Sketch 的界面设计的非常简洁。最顶端的工具箱包含了最重要的操作。你可以用右侧的检查器来调整被选中图层的内容,左侧的窗口则会列出文件中的所有图层,中间当然就是你正在创作的画布。 Sketch 里没有浮动面板,检查器将会根据你选中的工具来显示所需控件,这样你能始终不受打扰的在画布上创作。 画布 Sketch 的画布尺寸是无限的,可以向任意方向无限延伸,你将拥有绝对的自由来规划自己的创作区

  • 用户界面 首先,我们需要熟悉mitmproxy的用户界面。打开您在其中启动mitmproxy的终端窗口。您处于mitmproxy的默认视图中,该视图显示流列表。您应该看到浏览器的HTTP请求以加载本教程。随着新请求的出现,mitmproxy将行添加到视图中。 命令效果请查看 用户界面 影片内容 欢迎来到mitmproxy教程。在本课程中,我们将介绍用户界面。 这是mitmproxy的默认视图。 随

  • 交互 showToast 基础库1.3.9开始支持,iOS版本2.1.23,Android版本2.1.38 showToast(Object object) 显示消息提示框。 参数 Object object 属性 类型 默认值 必填 说明 title string 是 提示的内容 icon string 'success' 否 图标 image string 否 自定义图标的本地路径,image

  • 一、简介 1.用于管理站点的前台模版页面 2.标签向导主要用于自动化生成数据调用标签。 二、功能演示 模版风格 标签向导

  • jd.nextTick(function callback) 页面间事件通信通道 延迟一部分操作到下一个时间片再执行。(类似于 setTimeout) 参数 function callback 示例代码 nextTickHandler() { this.setData({ msg: 'first'}) console.log(this.data.msg); jd.

  • IDataStream界面 表示了一个允许以各种格式进行读写操作的数据流。 IByteStream | +-- IDataStream package com.ms.wfc.io public interface IDataStream extends IByteStream 说明 该界面是IByteStream界面的扩展。 请参阅:BufferedStream, DataStre

  • IDataObject 界面 提供了一般数据转换机制的界面。 package com.ms.wfc.app public interface IdataObject 说明IDataObject界面被Clipboard类使用以从剪贴板或拖放操作中检取或存储数据。DataObject类提供这个界面的基本实现。 方法 IDataObject.getData 检取与指定数据格式相关的数据。 语法 publ

  • Sketch的界面被设计得极其简约。顶端的工具条包含了最重要的操作,右侧的检查器用于调整被选中图层的属性,而左侧的面板则列出了文档中的所有图层,当前工作的画布在中间。