Hi,

I tried your sub with EVT_CLOSE Event (without the t-sub, don't know what this 
is for) and it works fine.

    EVT_CLOSE( $self, sub {
       my ($self, $event) = @_;

       my $result = Wx::MessageBox("Are you sure you want to close the 
application?", "Exit", wxYES|wxNO);

       if ($result == wxYES) {
         $self->Destroy;
       }
    });


Greez
Daniel





----- Ursprüngliche Mail ----
Von: Octavian Rasnita <[EMAIL PROTECTED]>
An: [email protected]
Gesendet: Dienstag, den 26. August 2008, 16:25:41 Uhr
Betreff: strange error

Hi,

I made an app with a menu that has an "Exit" item which if clicked, it is 
handled by the following event handler:

sub OnExit {
my ($self, $event) = @_;

my $result = Wx::MessageBox(t("Are you sure you want to close the 
application?"), t("Exit"), wxYES|wxNO);

if ($result == wxYES) {
$self->Destroy;
}
}

If I click the "no" button, all works fine, but if I choose yes to close the 
application, it appears a perl interpreter error window.

It is strange, because if I don't open that MessageBox, it doesn't appear 
that error, although the same code is executed.
I've seen that even if I open a simple message box in the event handler 
subroutine and I just print a message without checking for a return code, it 
still gives that error.

The following handler works fine:

sub OnExit {
my ($self, $event) = @_;
$self->Destroy;
}

Does it happen for you also or I need to re-install perl or WxPerl?

Thank you.

Octavian

__________________________________________________
Do You Yahoo!?
Sie sind Spam leid? Yahoo! Mail verfügt über einen herausragenden Schutz gegen 
Massenmails. 
http://mail.yahoo.com

Reply via email to