Giter Site home page Giter Site logo

Comments (5)

joachimmarder avatar joachimmarder commented on June 8, 2024

At that time I was referred to the stable version of VirtualTree. Now, however, the error has been merged into the stable.

The merge was necessary to fix issues in the derived style hook in newer Delphi versions. And therefore my answer won't be very different compared to the other issue:

Please respect our guidelines on the project homepage for submitting bugs. Please include your version of Delphi, and attach a sample compiling project as ZIP to your report, or instructions how to modify one of the included sample projects to reproduce the problem.

What I can see from the call stack: The root cause seems to be that the control is destroyed, and then a style hook is created for the destroyed control:

Vcl.Styles.CreateStyleHook($7D8B8E00)
Vcl.Styles.TStyleEngine.HandleMessage($7E2C0930,(130, 0, 0, 0, 0, 0, (), 0, 0, (), 0, 0, ()),$7E2C0930)
[...]
Vcl.Controls.TWinControl.Destroy
Vcl.Controls.TCustomControl.Destroy

It doesn't surprise me that this causes trouble. Virtual TreeView code is not involved in this call stack, except for inherited calls to base classes.

from virtual-treeview.

jBitHub avatar jBitHub commented on June 8, 2024

After hours of searching, I found the error. I have uploaded a small project (Delphi 11.3)
J9075 VirtualTree-Error.zip

  • Adjust search path (maybe)
  • Press button: "Panel.Free"
  • Exception

Problem:

  • Styles switched on
  • Delete parent.

It would be convenient to insert some code for debugging. Then unimportant events are skipped.
Methode:
VirtualTrees.pas: procedure TBaseVirtualTree.WndProc(var Message: TMessage); [25853]
grafik

from virtual-treeview.

joachimmarder avatar joachimmarder commented on June 8, 2024

After hours of searching, I found the error. I have uploaded a small project (Delphi 11.3)

Thank you for this. I hope you understand, that with the information I had, it would be impossible to track down the problem.

VirtualTrees.pas: procedure TBaseVirtualTree.WndProc(var Message: TMessage);

The exception occurs even if I comment TBaseVirtualTree.WndProc(), then without any VTV unit in the call stack. I am still convinced that the VCL should not create a style hook for destroyed control in the first place, maybe I can find some workaround.

from virtual-treeview.

joachimmarder avatar joachimmarder commented on June 8, 2024

Can you confirm that the latest source fixes the issue for you?

from virtual-treeview.

jBitHub avatar jBitHub commented on June 8, 2024

Thank you very much for the quick help.
The error no longer occurs with me.

Thank you for this. I hope you understand, that with the information I had, it would be impossible to track down the problem.

Yes, I understand. I had hoped you would find the mistake anyway. The combination of style and parent-destroy is quite unique.

from virtual-treeview.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.