DSkinLite GUI Library FAQ
|
|
-
Does DSkinLite have any limitations/message boxes?
The trial version of DSkinLite has some limitations, and you can't distribute your software products with a trial version of DSkinLite, or there will be some problems. After you purchase the license from DSkinLite, the registered version of DSkinLite doesn't have any limitation and message boxes, you can distribute your software with it.
-
Compile Error with "dskinliteu.lib"
If you receive a compiling error infomation such as "error LNK2001: unresolved external symbol "int __stdcall dsSkinWindow(struct HWND__ *,unsigned int,wchar_t const *,int)" (?dsSkinWindow@@YGHPAUHWND__@@IPB_WH@Z)", please assure that set the option "C/C++ / Language / Treat wchar_t as Built-in Type " to "Yes".
-
Can I use dskinlite in .Net/delphi application ?
DSkinLite doesn't support .net/delphi platform currently.
-
Does DSkinLite have any dlls dependencies?
DSkinLite doesn't depend on the rumtime libraries and gdiplus.dll of Microsoft.
-
How do I draw a window manually after using dskinlite to skin it?
DSkinLite provides a custom-drawing method to let user draw a window manually.
After calling dsSkinWindow to skin window, the application can't receive the WM_PAINT and WM_ERASEBKGND message. DSkinlite captures the messages and draws the window.
If you want to draw the window , you can call the function dsSetSelfPaint, then you will receive the WM_ERASEBKGND message, and the WPARAM parameter is the window memory dc in DSkinlite, so you can draw it at will.
-
What's the difference between SKIN_TYPE_DIALOG and SKIN_TYPE_DIALOGEX?
The control type SKIN_TYPE_DIALOG and SKIN_TYPE_DIALOGEX are used to skin a dialog with a caption.
If you use SKIN_TYPE_DIALOG to skin the dialog, dskinlite will modify window style such as removing WS_CAPTION, so you should use dsGetClientRect to get the corrent client area. And in this case, it is efficient to paint, and you can move the child control to the caption area.
And once using SKIN_TYPE_DIALOGEX, dskinlite doesn't modify the window style. In this case, it has no influence to user, you can use GetClientRect to get the correct value. For example , if you want to skin a property sheet dialog, you should use SKIN_TYPE_DIALOGEX, because the prperty sheet or property page dialog processes some window moving or displaying internally. If you use SKIN_TYPE_DIALOG, it will cause some confused problems.
-
GetClientRect function returns wrong value.
If you use the SKIN_TYPE_DIALOG to skin the window, and you can set caption or border width, so after skinning the dialog, its window style and client area changed, you should use the function dsGetClientRect to get the correct value.
dsGetClientRect function retrieves the coordinates of a window's client area which is different from the window api GetClientRect. The left and top of the lpRect are not zero, they are the left and top value of the client relative to the window area.
And if you use the SKIN_TYPE_DIALOGEX to skin the window, you will not come across this problem.
-
How can I skin a popup menu ?
You can use dsTrackPopupMenu to skin a popup menu.
-
How to put an image on dialog title bar?
The look and fee of controll is defined in the xml file, you can define an image at any position of dialog include the title bar area.
|
|
DirectUI GUI Library FAQ
|
|
-
What is the difference between DirectUI GUI Library and DSkinLite GUI Library ?
DSkinLite is used to skin the window with a handle, it just changes the look and feel of the window, and doesn’t manages the window's properties such as size, position, being visible or hiding.
DirectUI is a gui library to create windowless control, and manages all of the controls include the control width a handle and the control without a handle. It also uses xml to define the style of control. And now, DirectUI doesn't support changes the look and feel of control which has a handle. You can use DSkinLite to skin those controls.
-
I use a win32 control List Control in application, and DirectUI GUI Library doesn't support to skin the List Control, How Can I skin this list control?
DirectUI can only skin the windowless controls which are defined in DirectUI, for those win32 controls, you can use dskinlite to skin them.
|
|