🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.python
4 messages
4 total messages Started by Pawel J Maczewski Tue, 24 Dec 2002 12:27
Close() w wxPy
#441
Author: Pawel J Maczewski
Date: Tue, 24 Dec 2002 12:27
10 lines
1156 bytes
Witam,
  W aplikacji pisanej przy uzyciu wxPy ;-) z jednego okna otwiram drugie
(typu wxFrame). Nastepnie z tego pierwszego daje self.Close (true), albo
self.Destroy(). I tu pytanie: nie zamyka mi potomnego okienka... A
chcialbym zeby to robilo. Jak mozna to zrobic? (pewnie cos pokopalem z
dziedziczeniem, ale juz nie wiem...) :(

pozdrawiam, wesolutkich swiat :-) 

  Kender
Re: Close() w wxPy
#442
Author: bart
Date: Thu, 02 Jan 2003 17:18
17 lines
1333 bytes
On Tue, 24 Dec 2002 13:27:58 +0100, Pawel J Maczewski wrote:

> Witam,
>   W aplikacji pisanej przy uzyciu wxPy ;-) z jednego okna otwiram drugie
> (typu wxFrame). Nastepnie z tego pierwszego daje self.Close (true), albo
> self.Destroy(). I tu pytanie: nie zamyka mi potomnego okienka... A
> chcialbym zeby to robilo. Jak mozna to zrobic? (pewnie cos pokopalem z
> dziedziczeniem, ale juz nie wiem...) :(
> 
> pozdrawiam, wesolutkich swiat :-) 
> 
>   Kender

jest sobie taka metoda w obiekcie jak __del__ spróbuj ją wykorzystać.
wywoływana jest w momencie usuwania obiektu przez GC.

bart
Re: Close() w wxPy
#443
Author: Jarek Zgoda
Date: Fri, 03 Jan 2003 19:58
23 lines
1954 bytes
bart <lda2@wp.pl> pisze:

>>   W aplikacji pisanej przy uzyciu wxPy ;-) z jednego okna otwiram drugie
>> (typu wxFrame). Nastepnie z tego pierwszego daje self.Close (true), albo
>> self.Destroy(). I tu pytanie: nie zamyka mi potomnego okienka... A
>> chcialbym zeby to robilo. Jak mozna to zrobic? (pewnie cos pokopalem z
>> dziedziczeniem, ale juz nie wiem...) :(
> jest sobie taka metoda w obiekcie jak __del__ spróbuj ją wykorzystać.
> wywoływana jest w momencie usuwania obiektu przez GC.

I - podobnie jak w Javie z metodą finalize() - musisz założyć, że GC 
zostanie wywołane. A co wtedy, jeżeli GC *nie zdąży zostać wywołane* 
(program zakończy działanie, a proces PVM zostanie usunięty z 
pamięci przed wywołaniem GC)?
Oto jest pytanie. Odpowiedzią jest konstrukcja try...finally. Nie wiem
czemu jedynie moi koledzy, którzy kiedykolwiek mieli do czynienia z
Object Pascalem, używają tej konstrukcji "naturalnie" (tzn. zawsze,
kiedy trzeba).

-- 
Jarek Zgoda
http://www.zgoda.biz/
jabber:jarek@jabberpl.org|ICQ:178306476|GG:3422968|Tlen:jzgoda
Re: Close() w wxPy
#444
Author: bart
Date: Sat, 04 Jan 2003 15:38
37 lines
2640 bytes
On Fri, 03 Jan 2003 19:58:12 +0000, Jarek Zgoda wrote:

> bart <lda2@wp.pl> pisze:
> 
>>>   W aplikacji pisanej przy uzyciu wxPy ;-) z jednego okna otwiram drugie
>>> (typu wxFrame). Nastepnie z tego pierwszego daje self.Close (true), albo
>>> self.Destroy(). I tu pytanie: nie zamyka mi potomnego okienka... A
>>> chcialbym zeby to robilo. Jak mozna to zrobic? (pewnie cos pokopalem z
>>> dziedziczeniem, ale juz nie wiem...) :(
>> jest sobie taka metoda w obiekcie jak __del__ spróbuj ją wykorzystać.
>> wywoływana jest w momencie usuwania obiektu przez GC.
> 
> I - podobnie jak w Javie z metodą finalize() - musisz założyć, że GC 
> zostanie wywołane. A co wtedy, jeżeli GC *nie zdąży zostać wywołane* 
> (program zakończy działanie, a proces PVM zostanie usunięty z 
> pamięci przed wywołaniem GC)?
> Oto jest pytanie. Odpowiedzią jest konstrukcja try...finally. Nie wiem
> czemu jedynie moi koledzy, którzy kiedykolwiek mieli do czynienia z
> Object Pascalem, używają tej konstrukcji "naturalnie" (tzn. zawsze,
> kiedy trzeba).

problem wydaje mi się ze wygląda troszkę inaczej:
masz własna klasę Window i z jej poziomu user otwiera X innych
potomnych okienek, teraz w głównym oknie programu wybiera "Zamknij Okno"
co ma się dziać... zamykamy okna potomne a potem główne... tyle ze 
nie zawsze wiemy jakie okna mamy otwarte a jakie nie...
powiedz gdzie wstawisz try...finally ??? rozwiązanie jest takie żeby
zawsze rejestrować gdzieś nowo otwarte obiekty i zamykać je przy
niszczeniu rodzica (i tak rekurencyjnie) 
aby jednak tego nie robić powstał GC, a nie po to aby sprzątać po
bałaganiarskim pisaniu.

a teraz jeszcze wracając do wxWindows to po wstępnym przeglądnięciu 
dokumentacji można się zorientować jak to jest zaimplementowane


bart
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads