|
-
Mar 10th, 2016, 09:59 AM
#961
Fanatic Member
Re: CommonControls (Replacement of the MS common controls)
 Originally Posted by Krool
Update released.
The issue with the not always working calculation that determine if DPIs are different is now solved.
Yes, that works fine now.
Hero!
Karl
-
Mar 14th, 2016, 12:14 PM
#962
Re: CommonControls (Replacement of the MS common controls)
Nit Picking the code base, but your IDispatch.GetIDsOfNames has the wrong definition?
Code:
[
uuid(00020400-0000-0000-C000-000000000046),
odl
]
interface IDispatch : IUnknown
{
typedef IDispatch *LPDISPATCH;
HRESULT GetTypeInfoCount([out] LONG *pctInfo);
HRESULT GetTypeInfo([in] LONG itinfo, [in] LONG lcid, [out] LONG *pptinfo);
HRESULT GetIDsOfNames([in] REFIID riid, [in] LPSTR *rgszNames, [in] LONG cNames, [in] LONG lcid, [in, out] LONG *rgDispID);
HRESULT Invoke([in] LONG DispIDMember, [in] REFIID riid, [in] LONG lcid, [in] SHORT wFlags, [in] DISPPARAMS *pdispparams, [in, out] VARIANT *pvarResult, [out] EXCEPINFO *pexcepinfo, [out] LONG *puArgErr);
};
It should be LPWSTR, so you can pass in a BSTR. This way VB skips the Conversion, and you can skip the DoubleUnicode hack you did here.
Code:
Public Function GetDispID(ByVal This As Object, ByRef MethodName As String) As Long
Dim IDispatch As OLEGuids.IDispatch
Dim IID_NULL As OLEGuids.OLECLSID
Set IDispatch = This
IDispatch.GetIDsOfNames IID_NULL, StrConv(MethodName, vbUnicode), 1, 0, GetDispID
'IDispatch.GetIDsOfNames IID_NULL, MethodName, 1, 0, GetDispID
End Function
P.S. I definitely appreciate the quality of your code. Regards.
Last edited by DEXWERX; Mar 14th, 2016 at 12:20 PM.
-
Mar 14th, 2016, 01:51 PM
#963
Re: CommonControls (Replacement of the MS common controls)
per our conv. A workaround might be to rename the Typelib, and change it's guid, so new projects use the updated Typelib. Otherwise it may not be worth changing. Thanks for the support.
-
Mar 29th, 2016, 06:08 AM
#964
Junior Member
Re: CommonControls (Replacement of the MS common controls)
what is the pager control?
-
Mar 30th, 2016, 06:29 AM
#965
Fanatic Member
Re: CommonControls (Replacement of the MS common controls)
 Originally Posted by ishalom
what is the pager control?
A scrollable container.
Try the pager demo, see at the start of the thread.
-
Apr 17th, 2016, 07:45 PM
#966
New Member
Re: CommonControls (Replacement of the MS common controls)
Hello, The RichTextBox Control have a error when is set visible=false.
RichTextBox.Visible=False
The error ocurred when close the execuble.
-
Apr 17th, 2016, 07:53 PM
#967
New Member
Re: CommonControls (Replacement of the MS common controls)
Try this in Wine. Is more evident in it
-
Apr 19th, 2016, 02:51 PM
#968
Re: CommonControls (Replacement of the MS common controls)
 Originally Posted by pepegriyo
Hello, The RichTextBox Control have a error when is set visible=false.
RichTextBox.Visible=False
The error ocurred when close the execuble.
Did you call the InitVisualStyles method (from VisualStyles.bas) on startup in your executable?
If this doesn't help please provide a demo showing the error as else I cannot reproduce it.
-
Apr 21st, 2016, 02:01 AM
#969
Lively Member
Re: CommonControls (Replacement of the MS common controls)
I know this is dumb question but I have never used color picker dialog box and would like to know how to reference it so can call to be used to change form background etc.
-
Apr 21st, 2016, 02:45 PM
#970
Lively Member
Re: CommonControls (Replacement of the MS common controls)
 Originally Posted by jpskiller
I know this is dumb question but I have never used color picker dialog box and would like to know how to reference it so can call to be used to change form background etc.
Said it was dumb, sorted it now
-
Apr 23rd, 2016, 08:25 AM
#971
New Member
Re: CommonControls (Replacement of the MS common controls)
 Originally Posted by Krool
Did you call the InitVisualStyles method (from VisualStyles.bas) on startup in your executable?
If this doesn't help please provide a demo showing the error as else I cannot reproduce it.
Attach a Demo is not working RichTextbox
Last edited by FunkyDexter; Apr 24th, 2016 at 04:38 AM.
-
Apr 23rd, 2016, 08:50 AM
#972
New Member
Re: CommonControls (Replacement of the MS common controls)
 Originally Posted by pepegriyo
I Attach Demo2, with completed code.
Last edited by FunkyDexter; Apr 24th, 2016 at 04:39 AM.
-
Apr 24th, 2016, 04:41 AM
#973
Re: CommonControls (Replacement of the MS common controls)
I've removed your attachments because they contained compiled executables. We do ask that you don't include any compiled components in attachments. It's source code only I'm afraid.
Please feel free to re-attach them but with the executables removed.
The best argument against democracy is a five minute conversation with the average voter - Winston Churchill
Hadoop actually sounds more like the way they greet each other in Yorkshire - Inferrd
-
May 3rd, 2016, 08:21 PM
#974
New Member
Re: CommonControls (Replacement of the MS common controls)
 Originally Posted by pepegriyo
I re Attach Demo2, with completed code.
testRichtext2.zip
-
May 4th, 2016, 05:09 PM
#975
Re: CommonControls (Replacement of the MS common controls)
Update released.
Meaningful when using the DTPicker control.
The Change event was only raised when changing the value by the user.
This behavior is the same in the original MS DTPicker control.
But that behavior makes actually no sense and might be even a bug in the original MS DTPicker control.
On all the other controls the Click/Change (or whatever) events are also raised when changing by code.
So such a behavior is expected and that's why this fix was necessary in my opinion.
-
May 5th, 2016, 04:18 PM
#976
Re: CommonControls (Replacement of the MS common controls)
Update released.
Again concerning the DTPicker control.
Now it is possible to detect when the checkbox state has changed.
Regardless if it was changed by user or by code.
-
May 5th, 2016, 09:17 PM
#977
New Member
Re: CommonControls (Replacement of the MS common controls)
 Originally Posted by Krool
Update released.
Again concerning the DTPicker control.
Now it is possible to detect when the checkbox state has changed.
Regardless if it was changed by user or by code.
Could you check my attach?
-
May 5th, 2016, 09:31 PM
#978
Hyperactive Member
Re: CommonControls (Replacement of the MS common controls)
Something has affected the DTPicker control.
My program uses 12 DTPickers.
4 need to check against one another, eg.
dtpLastDate.Value >= dtpStartDate.Value
dtpStartDate.Value <= dtpLastDate.Value
dtpStartDate.Value >= dtpCurrentDate.Value
dtpLastUpDate.Value <= dtpStartDate.Value
The other 8 are for changing the date to change the ListView info to display.
All 12 DTPicker uses only the Change event. The Click event are not used.
The program boots up in 2 seconds. Now with the new DTPPickers, the program boots up in 17 seconds.
My observation:
When I added these DTPickers into the project on 11-Feb-2014, naturally the Properties automatically show the Value as 11-Feb-2014 and I never need to change that, also I do not need to set any initial default value in the Form_Load. With the 5-May-2016 DTPicker, when the Value is "Change" in codes, something fire that cause errors to show up. This is not the main problem as can be fixed by setting default "Now" values in Form_Load.
The main problem is the extra 15 seconds for the software to boot.
Just notice another problem:
When I click 1 of the 8 DTPicker, the ListView display used to change in less than 2 seconds. Clicking on 1 of the 8 DTPickers synchronizes all 8. Now it take about 13 seconds to change the display.
Last edited by chosk; May 5th, 2016 at 09:42 PM.
-
May 6th, 2016, 12:14 AM
#979
Re: CommonControls (Replacement of the MS common controls)
@ chosk,
That is due to the fact that the change event is now fired when value was changed by code.
You can solve it by placing a "Freeze" variable on your form that is active when synchronizing all 8 DTPickers. At the end reset the variable and update listview. In each DTPicker change event should be a exit sub when the "Freeze" variable is active.
I know that I broke "compatibility". But it was stupid to have not Change event fired when value was changed by code.
-
May 6th, 2016, 03:49 AM
#980
Hyperactive Member
Re: CommonControls (Replacement of the MS common controls)
 Originally Posted by Krool
Update released.
Meaningful when using the DTPicker control.
The Change event was only raised when changing the value by the user.
This behavior is the same in the original MS DTPicker control.
But that behavior makes actually no sense and might be even a bug in the original MS DTPicker control.
On all the other controls the Click/Change (or whatever) events are also raised when changing by code.
So such a behavior is expected and that's why this fix was necessary in my opinion.
I played around with an empty project with just the DTPicker and MsgBox in the Click and Change event handlers. I may have missed the gist of the change.
The Change event was only raised when changing the value by the user.
I now understand this to be when user manually click on the DTPicker and change the date.
-
May 6th, 2016, 05:32 PM
#981
Re: CommonControls (Replacement of the MS common controls)
 Originally Posted by pepegriyo
Hello, The RichTextBox Control have a error when is set visible=false.
RichTextBox.Visible=False
The error ocurred when close the execuble.
I know now the reason for this. I look for a solution..
In the meantime you can do the following as workaround to solve this:
Code:
Private Sub Form_Unload(Cancel As Integer)
RichTextBox1.IDEStop
End Sub
In the Form that contains the invisible RichTextBox call the hidden "IDEStop" method.
Now the application will close without any error.
-
May 11th, 2016, 03:44 PM
#982
Re: CommonControls (Replacement of the MS common controls)
Update released.
I have included the ExpandedImage property of a Node in the TreeView control to be more compatible to the original MS control.
Last edited by Krool; May 11th, 2016 at 05:03 PM.
-
May 12th, 2016, 03:26 PM
#983
Re: CommonControls (Replacement of the MS common controls)
Update released.
The first upload of the update today had a bug. I just re-uploaded the update of today.
I saw that 3 users downloaded the first upload..
Please re-download. Sorry..
-
May 14th, 2016, 07:26 PM
#984
Re: CommonControls (Replacement of the MS common controls)
Update released.
Might be important for those who use the TreeView control.
It is now possible to pass a Node object in the Relative parameter in Nodes.Add and Node.Move.
This is of course possible in the original MS control. This bug should have been detected already..
Anyway, now it's done.
-
May 16th, 2016, 07:51 AM
#985
Re: CommonControls (Replacement of the MS common controls)
Update released.
Again important for those who use the TreeView control.
It is now ensured that BeforeCollapse/BeforeExpand and Collapse/Expand events are always fired when Expanded property of a Node is being changed.
Prior to this update this was only once fired. (because of TVIS_EXPANDEDONCE)
Also it is now possible to have .Expanded = True even when there are no childs yet. It will be then "actually expanded" when a child is added.
So the behavior is now the same as in the original MS control.
-
May 17th, 2016, 04:24 PM
#986
Re: CommonControls (Replacement of the MS common controls)
Update released.
 Originally Posted by pepegriyo
The RichTextBox Control have a error when is set visible=false.
RichTextBox.Visible=False
The error ocurred when close the execuble.
This issue is now solved.
The temporary workaround in Form_Unload, that I have suggested for the meantime, is now not needed anymore.
-
May 17th, 2016, 06:20 PM
#987
New Member
Re: CommonControls (Replacement of the MS common controls)
 Originally Posted by Krool
Update released.
This issue is now solved.
The temporary workaround in Form_Unload, that I have suggested for the meantime, is now not needed anymore.
OK Thank you!!
-
May 18th, 2016, 11:14 AM
#988
Fanatic Member
Re: CommonControls (Replacement of the MS common controls)
These controls have been a great aid to me in upgrading my app to Unicode support. Thank you for all of your work!
I noticed a rare problem yesterday. The tooltip on a ListBoxW control does not support Unicode. The control does but the tooltip doesn't. I'm using version 1.2
Last edited by AAraya; May 18th, 2016 at 11:20 AM.
-
May 19th, 2016, 10:52 AM
#989
Re: CommonControls (Replacement of the MS common controls)
 Originally Posted by AAraya
The tooltip on a ListBoxW control does not support Unicode. The control does but the tooltip doesn't. I'm using version 1.2
You mean the intrinsic VB ToolTipText property of the control? Yes, sure. No unicode support for that.
-
May 19th, 2016, 12:31 PM
#990
Re: CommonControls (Replacement of the MS common controls)
 Originally Posted by AAraya
I noticed a rare problem yesterday. The tooltip on a ListBoxW control does not support Unicode. The control does but the tooltip doesn't. I'm using version 1.2
 Originally Posted by Krool
You mean the intrinsic VB ToolTipText property of the control? Yes, sure. No unicode support for that.
The ToolTipText is hardcoded as part of the runtime, so it definitely doesn't support unicode. It is however easy to
do them yourself manually... like in this example.
-
May 20th, 2016, 01:16 PM
#991
Fanatic Member
Re: CommonControls (Replacement of the MS common controls)
 Originally Posted by Krool
You mean the intrinsic VB ToolTipText property of the control? Yes, sure. No unicode support for that.
Thanks for the information. If I'm to be honest, that's a bit disappointing I must say. The other unicode replacement controls I've used in the past support unicode fully - even in the control's tooltip property. I do appreciate your efforts very much however!
Last edited by AAraya; May 20th, 2016 at 01:24 PM.
-
May 20th, 2016, 02:13 PM
#992
Re: CommonControls (Replacement of the MS common controls)
 Originally Posted by AAraya
Thanks for the information. If I'm to be honest, that's a bit disappointing I must say. The other unicode replacement controls I've used in the past support unicode fully - even in the control's tooltip property. I do appreciate your efforts very much however!
Both .NET, and other Non-Free unicode controls use a seperate control to manage ToolTips.
The VB6 IDE just doesn't support unicode, because the property panel is ANSI only.
Here's a very rough ToolTip class you can modify yourself... you may or may not have to set the font to get it to work properly with east asian languages.
Or you can grab one from elsewhere on this forum.
http://www.vbforums.com/showthread.p...iCode-ToolTips
Code:
Option Explicit
Private Const NULL_ As Long = 0&
Private Const HWND_TOPMOST As Long = -1&
Private Const SWP_NOSIZE As Long = &H1&
Private Const SWP_NOMOVE As Long = &H2&
Private Const SWP_NOACTIVATE As Long = &H10&
Private Const CW_USEDEFAULT As Long = &H80000000
Private Const TTF_IDISHWND As Long = &H1&
Private Const TTF_SUBCLASS As Long = &H10&
Private Const TTF_TRACK As Long = &H20&
Private Const TTS_NOPREFIX As Long = &H2&
Private Const TTS_ALWAYSTIP As Long = &H1&
Private Const WS_POPUP As Long = &H80000000
Private Const WS_EX_TOPMOST As Long = &H8&
Private Const WM_USER As Long = &H400&
Private Const TTM_ADDTOOL As Long = (WM_USER + 50&)
Private Const TTM_SETMAXTIPWIDTH As Long = (WM_USER + 24&)
Private Const TOOLTIPS_CLASS As String = "tooltips_class32"
Private Type RECT
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type
Private Type TOOLINFO
cbSize As Long
uFlags As Long
hWnd As Long
uId As Long
Rect_ As RECT
hInst As Long
lpszText As Long
lParam As Long
lpReserved As Long
End Type
Private Declare Function SetWindowPos Lib "user32" (ByVal hWnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal uFlags As Long) As Long
Private Declare Function CreateWindowEx Lib "user32" Alias "CreateWindowExW" (ByVal dwExStyle As Long, ByVal lpClassName As Long, ByVal lpWindowName As Long, ByVal dwStyle As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hWndParent As Long, ByVal hMenu As Long, ByVal hInstance As Long, ByRef lpParam As Any) As Long
Private Declare Function DestroyWindow Lib "user32" (ByVal hWnd As Long) As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageW" (ByVal hWnd As Long, ByVal Msg As Long, ByVal wParam As Long, lParam As Any) As Long
Private m_hWnd As Long
Private Function CreateTooltipWindow(hWndParent As Long) As Boolean
If m_hWnd Then
CreateTooltipWindow = True
Exit Function
End If
Dim Style As Long
Style = WS_POPUP Or TTS_ALWAYSTIP Or TTS_NOPREFIX
m_hWnd = CreateWindowEx(WS_EX_TOPMOST, StrPtr(TOOLTIPS_CLASS), NULL_, Style, _
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, _
hWndParent, NULL_, App.hInstance, ByVal NULL_)
If m_hWnd Then
SetWindowPos m_hWnd, HWND_TOPMOST, 0&, 0&, 0&, 0&, SWP_NOMOVE Or SWP_NOSIZE Or SWP_NOACTIVATE
CreateTooltipWindow = True
End If
End Function
Public Function SetToolTip(Control As Control, Caption As String) As Boolean
If Not CreateTooltipWindow(Control.Parent.hWnd) Then Exit Function
Dim ti As TOOLINFO
ti.cbSize = LenB(ti)
ti.hWnd = Control.Parent.hWnd
ti.hInst = App.hInstance
ti.uFlags = TTF_IDISHWND Or TTF_SUBCLASS ' Or TTF_TRACK
ti.uId = Control.hWnd
ti.lpszText = StrPtr(Caption)
SendMessage m_hWnd, TTM_ADDTOOL, 0&, ti
End Function
Private Sub Class_Terminate()
If m_hWnd Then DestroyWindow m_hWnd
End Sub
Last edited by DEXWERX; May 20th, 2016 at 02:21 PM.
-
May 21st, 2016, 11:17 AM
#993
Re: CommonControls (Replacement of the MS common controls)
Here's another Unicode-aware ToolTip class module.
On Local Error Resume Next: If Not Empty Is Nothing Then Do While Null: ReDim i(True To False) As Currency: Loop: Else Debug.Assert CCur(CLng(CInt(CBool(False Imp True Xor False Eqv True)))): Stop: On Local Error GoTo 0
Declare Sub CrashVB Lib "msvbvm60" (Optional DontPassMe As Any)
-
May 21st, 2016, 06:58 PM
#994
Re: CommonControls (Replacement of the MS common controls)
Update released.
The GetFirstVisible function in the TreeView, ListView and ImageCombo control has been removed.
It has been replaced by an improved TopItem property.
Reason is that 'TopItem' is more known/consistent in VB6. (e.g. 'TopIndex' in List and Combo control)
Also note the other improvements. (firing of events when changed by code)
It is not a error that the ItemCheck event in the ListView control is missing in the List, as that event in the ListView control was already fired when changed by code.
Last edited by Krool; May 21st, 2016 at 07:01 PM.
-
May 30th, 2016, 11:04 AM
#995
Re: CommonControls (Replacement of the MS common controls)
 Originally Posted by evanzulli
Hi!
Is there a way to modify the Tag property so as to use a Variant instead of a String?
Thanks
Update released.
Your request was from 2014...
But hey, now its done. :-)
-
May 31st, 2016, 05:33 PM
#996
Re: CommonControls (Replacement of the MS common controls)
Update released.
The memory consumption in Report View in the ListView control has been decreased significantly.
Because the handling of the ListSubItems has been improved, which means:
Instead of a collection for each ListItem for the ListSubItems is now an internal array.
This saves one class object per ListItem. And class objects are like big animals. (116 bytes for class object, without content)
Also this internal array allows to have the Tag property of a ListSubItem to be Variant. Before this was very impractical to realize as the properties were saved directly on the Memory Heap.
-
May 31st, 2016, 10:37 PM
#997
Member
Re: CommonControls (Replacement of the MS common controls)

why when i used in winxp have a error
how can i do?thank
-
May 31st, 2016, 11:51 PM
#998
Re: CommonControls (Replacement of the MS common controls)
 Originally Posted by xxdoc
why when i used in winxp have a error
how can i do?thank
I assume you try to use the Groups feature. There are available on Windows XP, but only if the App is linked via manifest to comctl32.dll version 6.0.
If you want to keep the IDE on comctl32.dll version 5.8x and only the compiled app linked to 6.0 then use On Error Resume Next while on .Groups.
Hint: In order to trap error raises via "On Error Goto ..." or "On Error Resume Next" it is necessary to have "Break on Unhandled Errors" selected instead of "Break in Class Module" on Tools -> Options... -> General -> Error Trapping.
Last edited by Krool; Jun 1st, 2016 at 12:03 AM.
-
Jun 1st, 2016, 01:36 PM
#999
Re: CommonControls (Replacement of the MS common controls)
 Originally Posted by Krool
Because the handling of the ListSubItems has been improved, which means:
Instead of a collection for each ListItem for the ListSubItems is now an internal array.
This saves one class object per ListItem. And class objects are like big animals. (116 bytes for class object, without content)
Also this internal array allows to have the Tag property of a ListSubItem to be Variant. Before this was very impractical to realize as the properties were saved directly on the Memory Heap.
Concerning the update for the ListSubItems.
Did a bugfix in the Key (String) handling for the ListSubItems method 'Add', 'Item' and 'Remove' in the ListView control.
This minor stupid bug had big impact that the Key accessing did not work at all.
Somehow I didn't notice that yesterday... Sorry.
But hopefully everything should be working now.
-
Jun 5th, 2016, 03:54 AM
#1000
Member
Re: CommonControls (Replacement of the MS common controls)
 Originally Posted by Krool
This project is intended to replace the MS common controls for VB6.
The "MSCOMCTL.OCX" (respectively "COMCTL32.OCX") can be replaced completly.
The "MSCOMCT2.OCX" (respectively "COMCT232.OCX") can be replaced completly.
The "RICHTX32.OCX" can be replaced completly.
The "COMDLG32.OCX" can be replaced completly.
The "COMCT332.OCX" can be replaced completly.
The "MCIWNDX.OCX" (shipped with VB5) can be replaced completly.
The "SYSINFO.OCX" can be replaced completly.
Following controls are available at the moment:
- Animation
- CheckBoxW
- ComboBoxW
- CommandButtonW
- CommandLink
- CoolBar
- CommonDialog (Class Module)
- DTPicker
- FrameW
- HotKey
- ImageCombo
- ImageList
- IPAddress
- LabelW
- LinkLabel
- ListBoxW
- ListView
- MCIWnd
- MonthView
- OptionButtonW
- Pager
- ProgressBar
- RichTextBox
- Slider
- SpinBox
- StatusBar
- SysInfo
- TabStrip
- TextBoxW
- ToolBar
- TreeView
- UpDown
Unicode is supported for all the stated controls.
At design time (IDE) there is only one dependency. (OLEGuids.tlb)
This is a modified version of the original .tlb from the vbaccelerator website.
But for the compiled .exe there are no dependencies, because the .tlb gets then compiled into the executable.
Everything should be self explained, because all functions and properties have a description.
This Demo shows of how to make the ToolBar control accessible per shortcut key on a MDIForm.
ActiveX Control versions, together with a Registration-Free (Side-by-side) solution:
Version 1.0 (End of support)
Version 1.1
Version 1.2
Notes:
- When using the SetParent API, then you should pass .hWndUserControl and not .hWnd to it.
- When changing the "Project Name", then you should have all forms open, else all properties are lost. Reason is due to the fact that the library to which the controls are referring is the "Project Name" itself. Keeping all forms open will ensure that the .frx files will be updated with the new "Project Name".
- In order to trap error raises via "On Error Goto ..." or "On Error Resume Next" it is necessary to have "Break on Unhandled Errors" selected instead of "Break in Class Module" on Tools -> Options... -> General -> Error Trapping.
- If you want to embed the controls into another UserControl then you need to add the following code (Post #597) into your UserControl. As else the accelerator keys like the Left/Right key will not work. This issue is only relevant when using the Std-EXE Version. (The OCX Version will just work fine without any additional code)
List of revisions:
Code:
04-Jun-2016
- Included the Level property of a Node in the TreeView control.
02-Jun-2016
- Included the ItemFromPos property in 'CbrBands' in the CoolBar control.
01-Jun-2016
- Bugfix in the Key (String) handling for the ListSubItems method 'Add', 'Item' and 'Remove' in the ListView control.
31-May-2016
- Noticeable less memory consumption in Report View in the ListView control.
Also the Tag property in 'LvwListSubItem' is now as Variant.
- Some other minor internal improvements.
30-May-2016
- Fixed a bug when adding a ListSubItem in-between in the ListView control.
29-May-2016
- Tag property in class collections are now as Variant. (except for 'LvwListSubItem', which remains as String)
At design-time only String variables can be set, like in the original MS control.
It is not allowed to store circular reference objects. (error will be raised)
Example: 'Set TreeView1.Nodes(1).Tag = TreeView1.Object' (Though TreeView1 without '.Object' is allowed)
28-May-2016
- Shadow objects in class collections are now also decoupled in run-time controls. (ImageCombo, LinkLabel, ListView and TreeView control)
This ensures that UserControl_Terminate will always be fired.
They were already decoupled in design-time controls. (TabStrip, StatusBar, ToolBar, CoolBar and ImageList control)
26-May-2016
- Included the ItemFromPos property in 'LvwColumnHeaders' in the ListView control. (via HDM_ORDERTOINDEX)
25-May-2016
- Included the NodeBeforeCheck event in the TreeView control.
23-May-2016
- Minor bugfixes in the TopItem property in the ListView control.
22-May-2016
- Improved the TopItem property in the ListView control.
It can be used now also when groups are enabled in 'report' view. (LVM_GETTOPINDEX fails in this case, thus a workaround was necessary)
Enhanced the code when in 'Icon', 'SmallIcon' and 'Tile' view.
21-May-2016
- Included the NodeBeforeSelect event in the TreeView control.
- Removed the GetFirstVisible function in the TreeView, ListView and ImageCombo control.
It has been replaced by the TopItem property. It can be even 'Set' in the TreeView and ImageCombo control.
- The NodeCheck event is now also fired when the checked state of a node was changed by code in the TreeView control.
- The ItemCheck event is now also fired when the checked state of an item was changed by code in the ListBoxW control.
- The ColumnCheck event is now also fired when the checked state of a column header was changed by code in the ListView control.
19-May-2016
- The DragIcon, DragMode and ToolTipText property are now also available when setting to a shadow object. ('Set' command)
- The Drag and SetFocus method are now also available when setting to a shadow object. ('Set' command)
17-May-2016
- Included the class 'RtfOleCallback' in the RichTextBox control.
This decouples the IRichEditOleCallback interface and ensures UserControl_Terminate will always be fired.
When updating, please replace all components. (e.g. RichTextBoxBase.bas)
16-May-2016
- Improved the Expanded property of a Node in the TreeView control. It works now like in the original MS control.
It is now ensured that BeforeCollapse/BeforeExpand and Collapse/Expand events are always fired when state is being changed.
Also it is now possible to set the expanded state even when there are no child items associated.
- To support large numbers the Children property of a Node returns now 'Long' instead of 'Integer' in the TreeView control.
15-May-2016
- It is now possible to pass a Node object in the Relative parameter in Nodes.Add and Node.Move in the TreeView control.
- Removed the error message 'the size of the selected picture is not compatible' in the Images property page of the ImageList control.
So at design time it is now allowed to select different sized pictures. At run time it was already allowed.
The original MS control allows it also. So such error message was a unnecessary limitation.
12-May-2016
- Fixed a bug in the Move method of a Node and some other internal improvements in the TreeView control.
Bugs were in relation to the new ExpandedImage property of a Node.
11-May-2016
- Included the ExpandedImage property of a Node in the TreeView control.
08-May-2016
- The SelChange event is now also fired when value or selection was changed by code in the MonthView control.
- Some internal improvements in the DTPicker and MonthView control.
06-May-2016
- Fixed a bug that the DateClicked parameter in the DateClick event was invalid in the MonthView control.
- Included Error 35770 "An invalid date range was specified" in the MonthView control.
05-May-2016
- Fixed a bug that the Change event was not fired when the checkbox state changed in the DTPicker control.
- Included Error 35787 "Can't set Value to Null when CheckBox property is False" in the DTPicker control.
This Error is also raised in the original MS control.
04-May-2016
- The Change event is now also fired when value was changed by code in the DTPicker control.
Though in the original MS control it is only raised when value was changed by user.
But that makes actually no sense and might be even a bug in the original MS control.
15-Apr-2016
- Minor adjustment to the BackColor in the StatusBar control so that the Pager control can recognize it.
31-Mar-2016
- Minor bugfix in the internal Numeric/Currency/Date sorting functions in the ListView control.
09-Mar-2016
- Improved the calculation that determines if DPIs are different. All controls are now really "DPI Aware".
01-Mar-2016
- Bugfixes and improvements for vertical ToolBar control. (Align property set to vbAlignLeft or vbAlignRight)
The Vertical ToolBar behaves now like the original MS control when the Wrappable property is set to False.
Also changing from horizontal to vertical and vice versa after initialization works now properly.
29-Feb-2016
- All controls are now "DPI Aware". (concerns exotic DPI or very large DPI, e.g. 113% and 200%)
- ComboBoxW with Style 'CboStyleDropDownCombo' is now working on Windows 2000.
Message CB_GETCOMBOBOXINFO is not supported on Windows 2000, so little workaround was necessary to solve this.
- Some other minor internal improvements.
25-Feb-2016
- Minor adjustment to the BackColor in the ToolBar control so that the Pager control can recognize it.
24-Feb-2016
- Fixed a bug that the Scroll event fired twice instead of once in the Slider control.
19-Feb-2016
- The BackColor property in the ToolBar control is now shown/visible at design-time.
But it remains ignored when the control paints via double-buffering. (also at run-time)
30-Jan-2016
- Included the ShowTrailingDates property in the MonthView control.
- Included the CalendarShowTrailingDates property in the DTPicker control.
- Forgot to rename the HotTrack property to 'HotTracking' in the property page of the SpinBox control.
28-Jan-2016
- Fixed a bug in the LVN_ITEMACTIVATE handler in the ListView control.
The Shift parameter in the ItemActivate event was not properly set.
19-Jan-2016
- Renamed the HotTrack property to 'HotTracking' in the SpinBox control.
So the wording is in line with the UpDown, TreeView, TabStrip, ListView and LinkLabel control.
07-Jan-2016
- Included the MaxText event in the TextBoxW and RichTextBox control.
01-Jan-2016
- Mouse events now again in correct order in the ImageCombo, TreeView and ListView control.
Some workaround was necessary to raise them 'After' (refer to update 21-Nov-2015) and keep correct order.
Issue was an internal modal message loop on these controls. (DragDetect)
29-Dec-2015
- UserControl_Resizer is now called in the CoolBar control when setting a child control.
08-Dec-2015
- WM_MOUSEWHEEL handlers are now "processed" (no forward to the chain anymore) in the DTPicker and MonthView Control.
02-Dec-2015
- Fixed a bug in the mouse events in the ListView and TreeView control. (relates to update on 21-Nov-2015)
23-Nov-2015
- Forgot to include ListBoxW and ComboBoxW in the ComCtlsIDEStopProtectionHandler.
- InitReleaseVisualStyles function in VisualStyles.bas is now only called outside IDE.
This is more efficient then always call InitReleaseVisualStyles and do the IDE check on ReleaseVisualStyles.
21-Nov-2015
- Mouse events (e.g. MouseDown) are now raised 'After' the window procedures. (like MS controls do)
When using the GetCapture() API in the mouse events the return values are now appropriate.
Also calling for instance a MsgBox in the mouse events does not mess up the mouse capture anymore.
All other events (e.g. KeyDown) remains 'Before', as the values can be altered. (like MS controls do)
20-Nov-2015
- Included the TabScrollWheel property in the TabStrip control.
16-Nov-2015
- Included the constant 'CdlPDUseDevModeCopies' in the CommonDialog class.
15-Nov-2015
- Less memory consumption in Report View in the ListView control.
13-Nov-2015
- Control arrays are now working properly on all controls.
Shadow objects in class collections are now decoupled in design-time controls. (TabStrip, StatusBar, ToolBar, CoolBar and ImageList control)
10-Nov-2015
- Improved the InitReleaseVisualStyles function in VisualStyles.bas.
30-Oct-2015
- Some minor internal improvements.
29-Oct-2015
- Fixed a bug in the Font property in the LinkLabel control.
- Setting 'Nothing' to the Font properties does not raise an error anymore.
Instead in that case the Font will be set to the 'Ambient.Font'. (like MS controls do)
[...]
11-Nov-2012
- First release.
The attached file is a . rar file with a .zip extension so it could be uploaded.
This is necessary as for a zip file there is a file limit of 500 KB.
if i want used one control .i must del other controls,or when i load all controls that is a very big exe.can any good ider?
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|