Watch, Follow, &
Connect with Us
Public Report
Report From: Kylix/VCLX/TApplication    [ Add a report in this area ]  
Report #:  3193   Status: Open
application.messagebox delayes focuschange
Project:  Kylix Build #:  4.186
Version:    3.0 Submitted By:   Martin Schreiber
Report Type:  Minor failure / Design problem Date Reported:  12/20/2002 8:18:33 AM
Severity:    Infrequently encountered problem Last Updated: 3/20/2012 2:24:39 AM
Platform:    Kylix Pascal IDE Internal Tracking #:   158280
Resolution: None  Resolved in Build: : None
Duplicate of:  None
Voting and Rating
Overall Rating: (3 Total Ratings)
4.00 out of 5
Total Votes: None
Description
QForms.TApplication.MessageBox does not reactivate the activeform and blocks focuschange until application.processmessages is called. On Windows this problem does not exist.

Problem:

procedure TCustomForm.SetWidgetFocus;
  .......
  QWidget_setFocus(FocusControl.Handle);
<- after execution of TApplication.Messagebox Qt does not send a QEventType_FocusIn event to FocusControl, it post it to the queue.

System: SuSe 8.1, KDE 3.0.3
Steps to Reproduce:
1. Download and run the attached project.
2. Click 'run testcase with messagebox'.
3. In messagebox click 'OK'.

// Exp:  widget2.focused = true (the same as on windows)
// Act:  widget2.focused = false.


5. Click 'run testcase without messagebox'.
6. widget2.focused = true.

// Exp:  widget2.focused = true (the same as on windows)
// Act:  widget2.focused = true (no problem here)
Workarounds
None
Attachment
3193.zip
Comments

Matthias Thoma at 2/22/2003 2:52:47 PM -
Please add *complete* steps which illustrate what actualy happens, what you expect and do not forget to mention which system/windowmanager you are using. TIA.

Martin Schreiber at 2/24/2003 4:36:34 AM -
I have attached a project to demonstrate the effect.

Andrew Fionik at 3/24/2003 6:48:35 AM -
I can confirm effect.

Martin Schreiber at 3/24/2003 11:21:09 PM -
Thank you!

Server Response from: ETNACODE01