Hi guys.!!
Good day.!
I just want to know on how to execute an event or function call after the resize event of the Form had been triggered!..
Thank you for giving time on this post.!
Hi guys.!!
Good day.!
I just want to know on how to execute an event or function call after the resize event of the Form had been triggered!..
Thank you for giving time on this post.!
What happens when you call the function / event in Form_Resize event ?
Is that not getting executed ?
I would check for an interval delay or use a boolean value to prevent the called sub/function from being called repeatedly, or perhaps a timer control would do...
Good Luck
The lynxgrid resized at form resize event but the column of the grid does not resize to fit the width of the grid.If i execute my resize function columnresize() after the form resize has been triggered, it will do.But i need to click a button to resize it. I need to do it after the resize of the form automatically without clicking a button. This is the code to resize the column, this works fine..
function columnresize(curgrid as Lynxgrid)
with curgrid
.forcecolfit
end with
end function
Any good way to do this guys...??Thank you for giving time.
As always..
Sorry for this delayed reply guys..I will keep this thread online today until i get this solve.
Thank you.
Okay, I don't know what kind of code you have in the resize event but here goes...
Option Explicit
Dim BusyResizing As Boolean
Private Sub Form_Resize()
If Me.WindowState = vbMinimized Then Exit Sub
If BusyResizing = True Then Exit Sub 'this prevents reentrancy while user is dragging edge of form
BusyResizing = True
Timer1.Interval = 250 '1/4 second
Timer1.Enabled = False
'do resizing code here
BusyResizing = False
Timer1.Enabled = True
End Sub
Private Sub Timer1_Timer()
Timer1.Enabled = False
GridName.forcecolfit
End Sub
Okay, the logic behind the above is this. The boolean variable keeps the resize event from being entered or reentered (reentrancy) as the user drags the edge of the form. Controlling the timer this way in the hopes that the timer event will only fire after the user has released the edge of the form...
Note: Untested suggestion above
Good Luck
Okay, I don't know what kind of code you have in the resize event but here goes...
Option Explicit Dim BusyResizing As Boolean Private Sub Form_Resize() If Me.WindowState = vbMinimized Then Exit Sub If BusyResizing = True Then Exit Sub 'this prevents reentrancy while user is dragging edge of form BusyResizing = True Timer1.Interval = 250 '1/4 second Timer1.Enabled = False 'do resizing code here BusyResizing = False Timer1.Enabled = True End Sub Private Sub Timer1_Timer() Timer1.Enabled = False GridName.forcecolfit End Sub
Okay, the logic behind the above is this. The boolean variable keeps the resize event from being entered or reentered (reentrancy) as the user drags the edge of the form. Controlling the timer this way in the hopes that the timer event will only fire after the user has released the edge of the form...
Note: Untested suggestion above
Good Luck
Thank you guys.this solves the problem. To make resizing smooth, just lower the interval of the timer.
God bless us.
We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.