Suneido

Integrated Application Platform

  • Home
  • Learning
    • Suneido Manual
    • Beginners
      • Inside Suneido
      • The Suneido Programming Language
      • The Suneido Database
      • Installing Suneido
      • Building Suneido
      • IDE Go To Tour
      • Upgrading To A New Release
    • Advanced
      • Canvas Control
      • DrawControl Part 1
      • DrawControl Part 2
      • DrawControl Part 3
      • SAX Like XML Processing
      • A Plug-In Architecture
      • A Simple Wizard Framework
      • An HTML Include Facility
      • An RSS 2 Feed Creator
      • MIME Generation
      • A New Add-on Facility
      • Workspace Improvement Hack
    • Mockito for Suneido
    • The Suneido Task Scheduler
    • Contributing To Suneido
    • Contributor Assignment of Copyright
    • Language Translation
    • Future Directions
    • Interview With Andrew Mckinlay
  • Forum
    • Announcements
    • Internals & Enhancements
    • Cookbook
    • General
  • FAQ
  • Screenshots
  • Downloads
  • Links

Re: Re: Display issues with adding/removing from VertConrol

Integrated Application Platform › Forums › General › Display issues with adding/removing from VertConrol › Re: Re: Display issues with adding/removing from VertConrol

April 16, 2011 at 10:25 pm #833
amckinlay
Keymaster

I agree the flickering is annoying. I guess I have just got used to it!

I think this is coming from the .WindowRefresh() in Group (parent of Vert and Horz) Insert and Remove

Because of stretchable controls and fill, adding or removing (or resizing) a control can cause non-local changes, so the layout for the entire window has to be recalculated. Of course, most of the time only certain parts of the window actually change.

WindowBase.Refresh does combine multiple refreshes to reduce the flickering.

The refresh ends up calling Resize on each control which usually ends up in Hwnd.Resize that calls SetWindowPos. But it still flickers even if I change this to not call SetWindowPos if the size is the same.

Now that I look at it, I’m not sure where the flickering is actually coming from.

If you are using FieldControl is has a .Repaint() in .SetBgndColor which is probably unnecessary when called by New. But commenting it out doesn’t help.

The SWP.NOCOPYBITS in Hwnd.Resize is suspicious, but again commenting it out doesn’t help.

The CS.REDRAW in the Window class definitions in Init also caught my eye, but removing it didn’t help.

It seems like something is erasing and redrawing the whole window, but I can’t find where that would be coming from.

Sorry, I am stumped. I wrote most of this code, but it was a long time ago!

Anyone else have any ideas?

Search Forums

Log In
Welcome to the new Suneido Web Site and Forum.
Register
Lost Password
users of the previous PHPBB Forum should be able to log in with their previous username and password.

Recent Topics

  • Alpha copy of gSuneido to play with
  • how to start jsuneido ?
  • Problem Starting Suneido…
  • Dialog not showing buttons
  • New link for Suneidojo

Contact Us | Legal Statement | Privacy Statement | SiteMap

Copyright © 2023 Axon® Development Corporation. All Rights Reserved. - Open Source Integrated Database and Programming Language