View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0006730 | JEDI VCL | 00 JVCL Components | public | 2021-10-29 12:00 | 2022-03-01 15:46 |
Reporter | leskos | Assigned To | |||
Priority | high | Severity | crash | Reproducibility | always |
Status | new | Resolution | open | ||
Platform | Windows | OS | Windows 10 | OS Version | 21H1 19043.1320 |
Product Version | |||||
Target Version | Fixed in Version | ||||
Summary | 0006730: TJvDatePickerEdit Invalid input value | ||||
Description | Delphi 11 JEDI VisualComponent Library 2021.09 installed from GetIt I put a JvDatePickerEdit component on the form I am getting an error message: Invalid input value | ||||
Steps To Reproduce | File / New / VCL Form Place a JvDatePickerEdit component on the form you will get an error message: Invalid input value | ||||
Additional Information | [50CFEAB1]{vcl280.bpl } Vcl.Mask.TCustomMaskEdit.SetText (Line 349, "Vcl.Mask.pas" + 14) + $12 [49AE8C5C]{JvStdCtrls280.bpl} JvMaskEdit.TJvCustomMaskEdit.SetText + $0 [49B979F7]{JvStdCtrls280.bpl} JvDatePickerEdit.TJvCustomDatePickerEdit.SetText + $3F [49B97BC6]{JvStdCtrls280.bpl} JvDatePickerEdit.TJvCustomDatePickerEdit.UpdateDisplay + $CA [49B9740A]{JvStdCtrls280.bpl} JvDatePickerEdit.TJvCustomDatePickerEdit.ResetDateFormat + $F2 [49B976C2]{JvStdCtrls280.bpl} JvDatePickerEdit.TJvCustomDatePickerEdit.SetDateFormat + $B2 [49B9623E]{JvStdCtrls280.bpl} JvDatePickerEdit.TJvCustomDatePickerEdit.CreateWnd + $12 [50CCBB96]{vcl280.bpl } Vcl.Controls.TWinControl.CreateHandle (Line 9982, "Vcl.Controls.pas" + 3) + $4 [50CCC040]{vcl280.bpl } Vcl.Controls.TWinControl.UpdateShowing (Line 10178, "Vcl.Controls.pas" + 7) + $11 [50CCC06E]{vcl280.bpl } Vcl.Controls.TWinControl.UpdateShowing (Line 10181, "Vcl.Controls.pas" + 10) + $10 [50CCC1EE]{vcl280.bpl } Vcl.Controls.TWinControl.UpdateControlState (Line 10225, "Vcl.Controls.pas" + 21) + $3 [50CCB136]{vcl280.bpl } Vcl.Controls.TWinControl.InsertControl (Line 9512, "Vcl.Controls.pas" + 25) + $2 [50CC6236]{vcl280.bpl } Vcl.Controls.TControl.SetParent (Line 6324, "Vcl.Controls.pas" + 9) + $4 [50CD26F5]{vcl280.bpl } Vcl.Controls.TWinControl.SetParent (Line 14172, "Vcl.Controls.pas" + 5) + $5 [527EBCCB]{vcldesigner280.bpl} VCLSurface.TControlItem.SetParent (Line 1250, "VCLSurface.pas" + 1) + $19 [20F492F2]{designide280.bpl} ComponentDesigner.TComponentRoot.DoCreateComponent (Line 2619, "ComponentDesigner.pas" + 142) + $8 [20F5449F]{designide280.bpl} ComponentDesigner.TComponentRoot.CreateComponentPos (Line 6565, "ComponentDesigner.pas" + 32) + $24 [5005FF3E]{rtl280.bpl } System.TObject.GetInterface (Line 18413, "System.pas" + 7) + $9 [527F8726]{vcldesigner280.bpl} VCLSurface.TVCLDesignerOleDropTarget.DropComponentStream (Line 6587, "VCLSurface.pas" + 17) + $25 [527E9ACD]{vcldesigner280.bpl} VCLSurface..TGrabHandles (Line 572, "VCLSurface.pas" + 0) + $AB1 [527F7E71]{vcldesigner280.bpl} VCLSurface.TVCLDesignerOleDropTarget.Drop (Line 6410, "VCLSurface.pas" + 7) + $17 [527E9ACD]{vcldesigner280.bpl} VCLSurface..TGrabHandles (Line 572, "VCLSurface.pas" + 0) + $AB1 [205BE1FA]{coreide280.bpl} OleDragAndDrop.TDropSource.Create (Line 474, "OleDragAndDrop.pas" + 4) + $4 [207EF037]{coreide280.bpl} ToolFrm.TToolForm.BeginOleDrag (Line 2233, "ToolFrm.pas" + 46) + $2B [207EED06]{coreide280.bpl} ToolFrm.TToolForm.BeginOleDrag (Line 2166, "ToolFrm.pas" + 4) + $A [207EF200]{coreide280.bpl} ToolFrm.TToolForm.PaletteBeginDrag (Line 2265, "ToolFrm.pas" + 3) + $2 [211831F6]{vclide280.bpl} IDECategoryButtons.TIDECategoryButtons.DoBeginDrag (Line 141, "IDECategoryButtons.pas" + 3) + $A [50E7CA2A]{vcl280.bpl } Vcl.CategoryButtons.TCategoryButtons.MouseMove (Line 2182, "Vcl.CategoryButtons.pas" + 24) + $9 [5006021E]{rtl280.bpl } System.@CallDynaInst (Line 18692, "System.pas" + 4) + $0 [50CC85DE]{vcl280.bpl } Vcl.Controls.TControl.WMMouseMove (Line 7776, "Vcl.Controls.pas" + 8) + $22 [500602C7]{rtl280.bpl } System.TObject.Dispatch (Line 18874, "System.pas" + 11) + $0 [50CC7CCA]{vcl280.bpl } Vcl.Controls.TControl.WndProc (Line 7544, "Vcl.Controls.pas" + 91) + $6 [50CCC54F]{vcl280.bpl } Vcl.Controls.TWinControl.IsControlMouseMsg (Line 10330, "Vcl.Controls.pas" + 1) + $9 [50CC279A]{vcl280.bpl } Vcl.Controls.FindControl (Line 3747, "Vcl.Controls.pas" + 6) + $9 [50CCCDBD]{vcl280.bpl } Vcl.Controls.TWinControl.WndProc (Line 10579, "Vcl.Controls.pas" + 170) + $6 [50EF1306]{vcl280.bpl } Vcl.Styles.TStyleEngine.HandleMessage (Line 3603, "Vcl.Styles.pas" + 22) + $7 [50DCE084]{vcl280.bpl } Vcl.Themes.TStyleManager.HandleMessage (Line 5858, "Vcl.Themes.pas" + 11) + $11 [50E7E4DB]{vcl280.bpl } Vcl.CategoryButtons.TCategoryButtons.WndProc (Line 3140, "Vcl.CategoryButtons.pas" + 24) + $4 [50093C27]{rtl280.bpl } System.SysUtils.AnsiCompareText (Line 7195, "System.SysUtils.pas" + 1) + $2F [5006076C]{rtl280.bpl } System.TMonitor.Destroy (Line 19558, "System.pas" + 0) + $0 [50064774]{rtl280.bpl } System.@FinalizeRecord (Line 32815, "System.pas" + 76) + $2 [50DD140C]{vcl280.bpl } Vcl.Themes.TStyleHook.CallDefaultProc (Line 7304, "Vcl.Themes.pas" + 6) + $6 [50E13AFE]{vcl280.bpl } Vcl.Forms.TScrollingStyleHook.WMMouseMove (Line 14697, "Vcl.Forms.pas" + 123) + $4 [50DCDE65]{vcl280.bpl } Vcl.Themes.TStyleManager.GetStyle (Line 5789, "Vcl.Themes.pas" + 7) + $D [50061544]{rtl280.bpl } System.@TryFinallyExit (Line 23404, "System.pas" + 8) + $0 [50DCDF53]{vcl280.bpl } Vcl.Themes.TStyleManager.GetStyle (Line 5800, "Vcl.Themes.pas" + 18) + $1E [50EF0B1B]{vcl280.bpl } Vcl.Styles.TCustomStyle.SourceLoaded (Line 3315, "Vcl.Styles.pas" + 1) + $F [50DD1DCD]{vcl280.bpl } Vcl.Themes.TStyleHook.WndProc (Line 7684, "Vcl.Themes.pas" + 38) + $6 [50DD1FAE]{vcl280.bpl } Vcl.Themes.TMouseTrackControlStyleHook.WndProc (Line 7783, "Vcl.Themes.pas" + 1) + $4 [50E13CEC]{vcl280.bpl } Vcl.Forms.TScrollingStyleHook.WndProc (Line 14788, "Vcl.Forms.pas" + 0) + $0 [50DD15F2]{vcl280.bpl } Vcl.Themes.TStyleHook.HandleMessage (Line 7389, "Vcl.Themes.pas" + 20) + $6 [50EF1306]{vcl280.bpl } Vcl.Styles.TStyleEngine.HandleMessage (Line 3603, "Vcl.Styles.pas" + 22) + $7 [50DCE084]{vcl280.bpl } Vcl.Themes.TStyleManager.HandleMessage (Line 5858, "Vcl.Themes.pas" + 11) + $11 [50CCAE2F]{vcl280.bpl } Vcl.Controls.TWinControl.DoHandleStyleMessage (Line 9408, "Vcl.Controls.pas" + 0) + $F [50CCC7B0]{vcl280.bpl } Vcl.Controls.TWinControl.WndProc (Line 10410, "Vcl.Controls.pas" + 1) + $4A [50174218]{rtl280.bpl } System.Classes.StdWndProc (Line 18318, "System.Classes.pas" + 8) + $0 [50E7E4DB]{vcl280.bpl } Vcl.CategoryButtons.TCategoryButtons.WndProc (Line 3140, "Vcl.CategoryButtons.pas" + 24) + $4 [50CCC338]{vcl280.bpl } Vcl.Controls.TWinControl.MainWndProc (Line 10267, "Vcl.Controls.pas" + 3) + $6 [50174218]{rtl280.bpl } System.Classes.StdWndProc (Line 18318, "System.Classes.pas" + 8) + $0 [50060D74]{rtl280.bpl } System.TMonitor.TryEnter (Line 19961, "System.pas" + 10) + $0 [50060894]{rtl280.bpl } System.TMonitor.Enter (Line 19622, "System.pas" + 4) + $2 [500606FC]{rtl280.bpl } System.TMonitor.CheckOwningThread (Line 19536, "System.pas" + 2) + $0 [50060A22]{rtl280.bpl } System.TMonitor.Exit (Line 19726, "System.pas" + 1) + $2 [50060D74]{rtl280.bpl } System.TMonitor.TryEnter (Line 19961, "System.pas" + 10) + $0 [50060894]{rtl280.bpl } System.TMonitor.Enter (Line 19622, "System.pas" + 4) + $2 [207ECB8C]{coreide280.bpl} ToolFrm.TToolForm.PaletteHook (Line 1176, "ToolFrm.pas" + 14) + $1E [50174218]{rtl280.bpl } System.Classes.StdWndProc (Line 18318, "System.Classes.pas" + 8) + $0 [50E08C7A]{vcl280.bpl } Vcl.Forms.TraverseClients (Line 8019, "Vcl.Forms.pas" + 8) + $6 [50E0D70B]{vcl280.bpl } Vcl.Forms.TApplication.ProcessMessage (Line 11314, "Vcl.Forms.pas" + 23) + $1 [50E0D74E]{vcl280.bpl } Vcl.Forms.TApplication.HandleMessage (Line 11344, "Vcl.Forms.pas" + 1) + $4 [50E0DA8D]{vcl280.bpl } Vcl.Forms.TApplication.Run (Line 11483, "Vcl.Forms.pas" + 27) + $3 [004F6F82]{bds.exe } bds.bds (Line 227, "" + 16) + $2 | ||||
Tags | No tags attached. | ||||
|
This is a big issue for me. I have a large project that I would like to migrate to Delphi 11. What I have done is to create the TJvDatePickerEdit at runtime and all is well. |
|
The same error occurs when I open a form with the JvDatePickerEdit component that was created in Delphi 10.4.2. This is a big problem because in my project I have 250 forms with this component. In the dfm file, for each JvDatePickerEdit component, I have to set the StoreDateFormat (DateFormat, DateSeparator) property and only then the form will open without any problems. |
|
I solved this problem temporarily. I added a command in line 715 in unit JvDatePickerEdit StrReplace (ADateFormat, 'MMM', 'M', []); + StrReplace (ADateFormat, 'mm', 'MM', []); Result: = ADateFormat; I reinstalled jvcl manually and the problem is gone. |
|
Hello, I have the same problem. Porting an old Delphi application to Delphi 11. What is a correct "StoreDateFormat (DateFormat, DateSeparator)" value? If I create the component manually via code the form gets opened and I see the component. But If I enter a valid date I get an incorrect display value. See also Mantis ID 0006227. On Create the DateFormat is empty. I set the German value 'dd/mm/yyyy' via TFormatSettings.Create -> FormatSettings.ShortDateFormat. But the problem is still the same. |
|
Hi this bug should be fixed here: https://github.com/project-jedi/jvcl/pull/160 |