See http://home.pacbell.net/atai/guitool/for a list of specific interface libraries
How to choose the interface library
- is easy integrated into existing applications? is easy to apply in a new application project?
- Is the developer in time to master and use
- Are there enough demo samples to demonstrate the functional characteristics of the control library in all its aspects
- Is there a lot of success stories?
- Is there always a continuous update
- High efficiency of Interface library
- Drag and drop the form to see if there is a noticeable sense of pause.
Can find some well-known software in a system, such as QQ/MSN. If there are obvious differences
- Drag and drop the form to see if the interface controls have a noticeable flicker.
- Software startup speed.
The interface library products should be optimized for loading resources such as images, so as to reduce the time overhead caused by the loading of the interface library. It is also possible to compare the efficiency of the interface library by comparing the software startup speed.
- The efficiency of software tone adjustment.
skin++
Commercial Skin-changing software(www.uipower.com)
Based on the WIN32 interface Library, Shanghai Yong Jin company operation. 05 release of the first version number. The default non-client area of the form is removed, which invalidates the default API function of the window. And some key technical points have bugs, such as a bug in the pop-up menu for Web controls.Advantage: Two lines of code for skin change Disadvantages:a little slow .
1.1 skin++ features
◆ a thorough skin change, includingsystem dialog boxes, Windows standard controls, and third-party controls such as BCG;
support all Win32/win64 platform, Vc/vb/delphi/c++builder/vs.net/powerbuilder;
simple to use, just need a line of code to achieve the overall skin change;
visual design , provide skin design tools, self-designed skin, WYSIWYG design development environment;
tone style;
Massive skin resources, to provide skin conversion tools, can be mainstream skin theme into the skin++ format;
Support Unicode , provide a variety of encoding formats;
the interface is completely separated from the business logic;
1.2 skin++ Implementation principle
skin++ belongs to the second generation of plug-in interface library.
skin++ provides the Skinbuilder tool to design all of the control's resources into a single file, allowing for additional pruning operations to be performed independently outside the application.
skin++ mainly uses Hook and sub-class technology to achieve the application of their own active skin change.
1.3 skin++ The general process of skin change
1,the application launches, loading into the skin++ Library;
2, run skin++ loading skin file API function;
3, skin++ installation form process and other types of hooks, ready to intercept the application of all forms of creation events;
4, skin++ received form creation and other messages, according to the class name, style and other conditions to infer whether the form is sub-class;
5, the form sub-class is able to receive the form of all the messages;
6, according to different messages for the corresponding processing. such as:wm_paint message,skin++ to the operation of the drawing;
7,drawing needs to use the picture, text, fonts and other resources , such asthe ID, name and other conditions to the skin file to find;
8, the control operation process, various interface behavior changes can be processed by processing messages and API functions;
9, when the control is destroyed,skin++ that it is anti-sub-class, the skin++ before the message process address is set to the current message process;
all ofthe control's messages no longer go through the skin++ message handler function. Control to run its default form message handler function;
One, the application exits,the skin++ Library is unloaded, skin++ is notifiedbefore uninstallation, skin++ runs the Hook internally The anti-initialization and cleanup of resource files.
Directui
Business Interface Controls (www.directui.com)
Directui Open Interface Development Library, provide platform plug-in development mode, can easily extend the control. Directui supports a variety of development languages and platforms, such as Vc,vb,c#,delphi,c++builder,powerbuilder and more. Provide WYSIWYG development tools Directui Builder2010, drag-and-drop interface development mode, support JavaScript script control interface, completely separate logic and interface, support alpha multi-layer blending effect, support various skin object layout rules, support multiple image format resources , such as BMP, PNG, JPG, GIF, and so on, support dynamic skinning and seamlessly integrate with the VS IDE.
The same is the product of Shanghai Yong Jin. According to insiders said is from Microsoft dug a technical cattle people to develop, the kernel is borrowed from Microsoft's DUI technology. The interface library personally felt that there were also many problems. For example, they limit the form's wm_size message, and when the size of the form changes, a dashed box appears, not drawn, to increase efficiency and severely affect the user experience.
Bcgcontrolbar Introduction
Business Library, BCG authorized Microsoft to use some of BCG's controls and features in VS 2008, but Microsoft did not directly integrate BCG into VS 2008, but instead made a separate extension resource bundle that needed to be downloaded separately (download SP1 installation).
Bcgcontrolbar Pro is an extended library of MFC that can be used to build an advanced user interface similar to Microsoft®office 2000/xp/2003/2007/2010, Microsoft Visual Studio, and other well-known products. For example: calendars, grids, edits, and Gantt charts. Includes more than 200 well-designed, tested, and fully documented MFC extension classes.
- Bcgcontrolbar Library. NET Edition is a toolkit written in the language C + +/CLI (Common Language Infrastructure) with a code of 100% managed code. With this product, the Microsoft. NET Framework version 2.0 or higher is required to be installed.
- Bcgsoft Professional Editor (Bcgsoft Pro Edition) is an MFC extension library that enables you to incorporate advanced editing control components into any MFC-based application, providing a variety of special effects features like the syntax highlighting feature, color blocks, Intelli sense, character picture support, and more.
Vc Feature Pack
January 07, 2008, MS launched the Visual C + + Feature Pack Beta download. This time the feature Pack is specifically for the VC library of an expansion. The expansion is divided into two aspects, on the one hand, the interface Control Library of MFC, and the TR1 extension of ISO C + + Standard 2003. This enhancement package is now only available in English, and other language versions will wait until the VS2008 SP1.
Deployment:
First you need to download the Visual C + + Feature Pack Beta download to Microsoft's Download Center for this 303M big guy;
Then, you need to install the English version of Visual Studio 2008 on the machine, other Languages Feature Pack does not support, completely install VS2008, even SQL Sever 2005 Express and Crystal Report basic components can not be less!
If you are vista, don't forget "Run as Administrator". The Hotfixinstaller service will start and install the Feature Pack update. Hotfixinstaller Service There may be no reason to hang there for a long time (not the not responding state), just to end the process directly in the Task manager, and once again execute the installation package will be able to.
The Visual C + + Sample Library was found in Download Center, 5M, download, install. under/microsoft Visual Studio 9.0/samples/1033, locate The Allvclanguagesamples.zip deployment, locate the feature Pack directory, and open the project compilation inside. A common possession of 34 examples.
In terms of interfaces, the integrated Bcgsoft interface controls are now able to easily create Vs2005,office 2007-style application interfaces with VC2008. At the same time, some controls were added.
The MFC Feature Pack Library supports new features in the following areas:
Menus
Toolbars
Panes
Ribbon Control
Outlook Alert
Controls
Dialog Boxes
Customization
Visualization
Special Features
In C + +, the implementation of TR1 is likely to be reflected in the next C + + standard c++0x. The main additions are partial containers and regular expressions.
<array>
<functional> (TR1)
<memory> (TR1)
<random>
<regex>
<tuple>
<type_traits>
<unordered_map>
<unordered_set>
<utility> (TR1)
Choose the interface style in the Application wizard, very easy, we got an Office 2007 style MFC program:
The NewControls Sample demonstrates the details of how these controls are used
Various interface Library Introduction and comparison