[Python] Chiusura finestra
Ciao a tutti!
Anticipo che sono in un sistema Windows.
Ho creato un pulsante wxTogglebutton nella mia finestra principale : Quando è True mi crea una piccola finestra wxFrame che vorrei chiudere quando lo stato del pulsante è a False.
Ho provato con os._exit() che purtroppo chiude tutte le finestre.
Io vorrei che si chiudesse solo quella che si apre alla pressione del pulsante.
Ho provato anche con self.Close() ma non fa nulla. Non funziona nemmeno in un wxButton nuovo sia con EVT_CLOSE che con EVT_BUTTON.
Consigli?
Essendo in Windows non posso chiamare la fork() e procedere con la chiusura del processo figlio.
Ringrazio anticipatamente chi mi risponderà
Dimenticavo... ho provato a True ha chiamare finestra.show() e a false fienstra.destroy() o fienstra.hide() ma non ottengo nulla. Non capisco come mai? Potreste aiutarmi a capire cosa sto sbagliando? Grazie
Anticipo che sono in un sistema Windows.
Ho creato un pulsante wxTogglebutton nella mia finestra principale : Quando è True mi crea una piccola finestra wxFrame che vorrei chiudere quando lo stato del pulsante è a False.
Ho provato con os._exit() che purtroppo chiude tutte le finestre.
Io vorrei che si chiudesse solo quella che si apre alla pressione del pulsante.
Ho provato anche con self.Close() ma non fa nulla. Non funziona nemmeno in un wxButton nuovo sia con EVT_CLOSE che con EVT_BUTTON.
Consigli?
Essendo in Windows non posso chiamare la fork() e procedere con la chiusura del processo figlio.
Ringrazio anticipatamente chi mi risponderà
Dimenticavo... ho provato a True ha chiamare finestra.show() e a false fienstra.destroy() o fienstra.hide() ma non ottengo nulla. Non capisco come mai? Potreste aiutarmi a capire cosa sto sbagliando? Grazie
Risposte
Il pulsante ToggleButton all'evento chiama questa funziona:
Sicuramente avrò fatto qualche errore perchè non sono una esperta. Potreste nel caso correggermi?
Inoltre G_sub sono i diversi subgraph dei componenti connessi creati una volta selezionato il componente connesso presente in una listbox della finestra che si presenta alla pressione del bottone Toggle e che vorrei distruggere o nascondere alla chiusura.
Vorrei anche chiedervi una seconda informazione: Una volta creato il subgraph, del componente connesso selezionato, parte tutto il ciclo del SUBFRAME principale avendolo impostato in questo modo:
quindi passo FALSE al Grafo principale e TRUE ai Subgraph dei componenti connessi in modo da poter riutilizzare lo stesso codice (e tutto funziona bene tranne il tasto ToggleButton, devo ancora controllare i pulsanti SAVE).
Il problema è che il pulsante Toggle per i subgraph, non trovando componenti connessi, mi restituisce correttamente il messaggio di DIALOG ; Quando vado a selezionare il pulsante ma nel Frame del Graph Principale NON OTTENGO la finestra dei componenti connessi ma ottengo il risultato del Subgraph elaborato.
DOMANDA: Come posso mantenerli distinti?? Ho provato ad inserire la condizione ma purtroppo non è sufficiente.
Vorrei che i pulsanti presenti del SubFrame restassero legati al grafo/subgrafo elaborato (Vorrei poter confrontare i diversi grafi elaborati )
Spero di essermi fatta capire
Grazie
def SubNetwork(self, event): obj = event.GetEventObject() self.state = obj.GetValue() print('self.state ', self.state) if M_G_ == M_G and Gr_ == Gr : Graph = Gr elif M_G_ == Gr_ == G_sub : Graph = G_sub if self.state == True: print('N_connected_comp_netw ', FunzCalc.N_connected_comp_netw(Graph) ) if FunzCalc.N_connected_comp_netw(Graph) > 1: ListBoxFrame(Graph).Show() else: wx.MessageBox('The network is connected, \n i.e. has a single connected components', 'Dialog', wx.OK | wx.ICON_INFORMATION) else: print('Destroy') ListBoxFrame(Graph).Destroy()
Sicuramente avrò fatto qualche errore perchè non sono una esperta. Potreste nel caso correggermi?
Inoltre G_sub sono i diversi subgraph dei componenti connessi creati una volta selezionato il componente connesso presente in una listbox della finestra che si presenta alla pressione del bottone Toggle e che vorrei distruggere o nascondere alla chiusura.
Vorrei anche chiedervi una seconda informazione: Una volta creato il subgraph, del componente connesso selezionato, parte tutto il ciclo del SUBFRAME principale avendolo impostato in questo modo:
class SubFrame(wx.Frame): def __init__(self, isPressed): self.isPressed = isPressed if self.isPressed == False: M_G_ = M_G ; Gr_ = Gr else: Graph = Gr ; M_G_ = Gr_ = G_sub
quindi passo FALSE al Grafo principale e TRUE ai Subgraph dei componenti connessi in modo da poter riutilizzare lo stesso codice (e tutto funziona bene tranne il tasto ToggleButton, devo ancora controllare i pulsanti SAVE).
Il problema è che il pulsante Toggle per i subgraph, non trovando componenti connessi, mi restituisce correttamente il messaggio di DIALOG ; Quando vado a selezionare il pulsante ma nel Frame del Graph Principale NON OTTENGO la finestra dei componenti connessi ma ottengo il risultato del Subgraph elaborato.
DOMANDA: Come posso mantenerli distinti?? Ho provato ad inserire la condizione ma purtroppo non è sufficiente.
Vorrei che i pulsanti presenti del SubFrame restassero legati al grafo/subgrafo elaborato (Vorrei poter confrontare i diversi grafi elaborati )
Spero di essermi fatta capire


Grazie