[lazarus] Tab generates error

Mattias Gaertner nc-gaertnma at netcologne.de
Wed Sep 24 03:43:16 EDT 2003


On Tue, 23 Sep 2003 09:02:25 -0500
Tony <tony at maro.net> wrote:

> Mattias Gaertner wrote:
> 
> >Can you send a backtrace?
> >
> >  
> >
> Well here's two things.  Attached is a sample project demonstrating the 
> lack of setfocus working in a dblclick event.

SetFocus is a known issue. Setting the focus in events does not work with
the gtk, because some gtk widgets set focus themselves.

 
> I can't reproduce the crash except in CheckBook Tracker, so it may have 
> something to do with the runtime creation of the components or some 
> such.  But, I took out my fix code and recreated the crash and here's 
> the crash with a backtrace:

I think, I need some more information. Can you point me to the current
version of cbt and tell me how to reproduce the crash?


Mattias



> 
> {{{ I double-click the TCheckbook and get this, which is correct,
> but it never focuses the CmbWithdrawPayTo which I try to do in
> the ondblclick handler }}}
> 
> TCheckBook.WMLMButtonUp::MESSAGE
> TFrmMain::CheckSelected
> TFrmMain::CheckSelected::DONE
> TCheckBook.WMLMButtonDblClk::MESSAGE
> TFrmMain.EditWithdrawAmountCHANGE Called
> TFrmMain.EditWithdrawAmountCHANGE Called
> EditWithdrawal::Setting focus to checkbook
> EditWithdrawal::Setting focus to CmbWithdrawPayTo
> EditWithdrawal::Done
> TCheckBook.WMLMButtonUp::MESSAGE
> TFrmMain::CheckSelected
> TFrmMain::CheckSelected::DONE
> 
> {{{ next I hit tab and this happens... }}}
> 
> ERROR in LCL: Cannot focus a disabled or invisible window
> Creating gdb catchable error:
> 
> Program received signal SIGFPE, Arithmetic exception.
> $0814a6c9 in RAISEGDBEXCEPTION (MSG=$8347c66) at lclproc.pas:415
> 415     lclproc.pas: No such file or directory.
>         in lclproc.pas
> Current language:  auto; currently pascal
> 
> (gdb) backtrace full
> #0  $0814a6c9 in RAISEGDBEXCEPTION (MSG=$8347c66) at lclproc.pas:415
> No locals.
> #1  $081186af in TCUSTOMFORM__SETACTIVECONTROL (AWINCONTROL=$84daf34,
>     this=$84d59b4) at customform.inc:889
> No locals.
> #2  $08117578 in TCUSTOMFORM__FOCUSCONTROL (WINCONTROL=$84daf34, 
> this=$84d59b4)
>     at customform.inc:137
>         WASACTIVE = true
> #3  $0812443c in TWINCONTROL__SETFOCUS (this=$84daf34) at 
> wincontrol.inc:1715
>         FORM = (^TCUSTOMFORM) $84d59b4
> #4  $08127b3c in TCONTROL__PERFORMTAB (FORWARDTAB=true, this=$85062f4)
>     at control.inc:814
>         I = 9
>         LIST = (^TLIST) $86bcdf4
>         FIRSTFOCUS = (^TCONTROL) $84daf34
>         OLDFOCUS = (^TCONTROL) $0
>         NEWFOCUS = (^TCONTROL) $84daf34
>         TOPLEVEL = (^TWINCONTROL) $84d59b4
>         PERFORMTAB = true (8)
>         RESULT = true (8)
> #5  $0805d32a in GTKKEYUPDOWN (WIDGET=$8ba6bc8, EVENT=$8b668e8, 
> DATA=$85062f4)
>     at gtkcallback.inc:642
>         MSG = {MSG = 258, CHARCODE = 9, UNUSED = 0, KEYDATA = 0, RESULT =
>         0} CODE = 9
>         KEYCODE = 65535
>         FLAGS = 0
>         TOGGLE = false
>         EXTENDED = false
>         SYSKEY = false
>         SHIFTSTATE = []
>         EVENTSTOPPED = true
>         TOPLEVEL = (PGTKWIDGET) $8b513a8
>         GTKKEYUPDOWN = true
>         RESULT = true
> #6  $400c7618 in gtk_marshal_BOOL__POINTER () from
> #/usr/lib/libgtk-1.2.so.0
> No symbol table info available.
> 
> 


-- 






More information about the Lazarus mailing list